|
19 | 19 | os.makedirs('./static') |
20 | 20 | app.mount("/static", StaticFiles(directory="static"), name="static") |
21 | 21 | index_html = open('templates/index.html', 'r').read() |
| 22 | +admin_html = open('templates/admin.html', 'r').read() |
22 | 23 | # 过期时间 |
23 | 24 | exp_hour = 24 |
24 | 25 | # 允许错误次数 |
25 | 26 | error_count = 5 |
26 | 27 | # 禁止分钟数 |
27 | 28 | error_minute = 60 |
28 | | - |
| 29 | +# 后台地址 |
| 30 | +admin_address = 'admin' |
| 31 | +# 管理密码 |
| 32 | +admin_password = 'admin' |
29 | 33 | error_ip_count = {} |
30 | 34 |
|
31 | 35 |
|
@@ -56,6 +60,33 @@ def get_file_name(key, ext, file): |
56 | 60 | return key, len(file), path[1:] + name |
57 | 61 |
|
58 | 62 |
|
| 63 | +@app.get(f'/{admin_address}') |
| 64 | +async def admin(request: Request): |
| 65 | + return HTMLResponse(admin_html) |
| 66 | + |
| 67 | + |
| 68 | +@app.post(f'/{admin_address}') |
| 69 | +async def admin_post(request: Request, db: Session = Depends(get_db)): |
| 70 | + if request.headers.get('pwd') == admin_password: |
| 71 | + codes = db.query(database.Codes).all() |
| 72 | + return {'code': 200, 'msg': '查询成功', 'data': codes} |
| 73 | + else: |
| 74 | + return {'code': 400, 'msg': '密码错误'} |
| 75 | + |
| 76 | + |
| 77 | +@app.delete(f'/{admin_address}') |
| 78 | +async def admin_delete(request: Request, code: str, db: Session = Depends(get_db)): |
| 79 | + if request.headers.get('pwd') == admin_password: |
| 80 | + file = db.query(database.Codes).filter(database.Codes.code == code) |
| 81 | + if file.first().type != 'text/plain': |
| 82 | + os.remove('.' + file.first().text) |
| 83 | + file.delete() |
| 84 | + db.commit() |
| 85 | + return {'code': 200, 'msg': '删除成功'} |
| 86 | + else: |
| 87 | + return {'code': 400, 'msg': '密码错误'} |
| 88 | + |
| 89 | + |
59 | 90 | @app.get('/') |
60 | 91 | async def index(): |
61 | 92 | return HTMLResponse(index_html) |
|
0 commit comments