Spaces:
Running
Running
Upload main.py
Browse files
main.py
CHANGED
|
@@ -552,36 +552,36 @@ async def home(request: Request):
|
|
| 552 |
else:
|
| 553 |
# 未设置PATH_PREFIX(公开模式),根据登录状态重定向
|
| 554 |
if is_logged_in(request):
|
| 555 |
-
return
|
| 556 |
else:
|
| 557 |
-
return RedirectResponse(url="/
|
| 558 |
|
| 559 |
# ---------- 登录/登出端点(支持可选PATH_PREFIX) ----------
|
| 560 |
|
| 561 |
# 不带PATH_PREFIX的登录端点
|
| 562 |
-
@app.get("/
|
| 563 |
async def admin_login_get(request: Request, error: str = None):
|
| 564 |
"""登录页面"""
|
| 565 |
return await templates.get_login_html(request, error)
|
| 566 |
|
| 567 |
-
@app.post("/
|
| 568 |
async def admin_login_post(request: Request, admin_key: str = Form(...)):
|
| 569 |
"""处理登录表单提交"""
|
| 570 |
if admin_key == ADMIN_KEY:
|
| 571 |
login_user(request)
|
| 572 |
logger.info(f"[AUTH] 管理员登录成功")
|
| 573 |
-
return RedirectResponse(url="/
|
| 574 |
else:
|
| 575 |
logger.warning(f"[AUTH] 登录失败 - 密钥错误")
|
| 576 |
return await templates.get_login_html(request, error="密钥错误,请重试")
|
| 577 |
|
| 578 |
-
@app.post("/
|
| 579 |
@require_login(redirect_to_login=False)
|
| 580 |
async def admin_logout(request: Request):
|
| 581 |
"""登出"""
|
| 582 |
logout_user(request)
|
| 583 |
logger.info(f"[AUTH] 管理员已登出")
|
| 584 |
-
return RedirectResponse(url="/
|
| 585 |
|
| 586 |
# 带PATH_PREFIX的登录端点(如果配置了PATH_PREFIX)
|
| 587 |
if PATH_PREFIX:
|
|
|
|
| 552 |
else:
|
| 553 |
# 未设置PATH_PREFIX(公开模式),根据登录状态重定向
|
| 554 |
if is_logged_in(request):
|
| 555 |
+
return await generate_admin_html(request, multi_account_mgr)
|
| 556 |
else:
|
| 557 |
+
return RedirectResponse(url="/login", status_code=302)
|
| 558 |
|
| 559 |
# ---------- 登录/登出端点(支持可选PATH_PREFIX) ----------
|
| 560 |
|
| 561 |
# 不带PATH_PREFIX的登录端点
|
| 562 |
+
@app.get("/login")
|
| 563 |
async def admin_login_get(request: Request, error: str = None):
|
| 564 |
"""登录页面"""
|
| 565 |
return await templates.get_login_html(request, error)
|
| 566 |
|
| 567 |
+
@app.post("/login")
|
| 568 |
async def admin_login_post(request: Request, admin_key: str = Form(...)):
|
| 569 |
"""处理登录表单提交"""
|
| 570 |
if admin_key == ADMIN_KEY:
|
| 571 |
login_user(request)
|
| 572 |
logger.info(f"[AUTH] 管理员登录成功")
|
| 573 |
+
return RedirectResponse(url="/", status_code=302)
|
| 574 |
else:
|
| 575 |
logger.warning(f"[AUTH] 登录失败 - 密钥错误")
|
| 576 |
return await templates.get_login_html(request, error="密钥错误,请重试")
|
| 577 |
|
| 578 |
+
@app.post("/logout")
|
| 579 |
@require_login(redirect_to_login=False)
|
| 580 |
async def admin_logout(request: Request):
|
| 581 |
"""登出"""
|
| 582 |
logout_user(request)
|
| 583 |
logger.info(f"[AUTH] 管理员已登出")
|
| 584 |
+
return RedirectResponse(url="/login", status_code=302)
|
| 585 |
|
| 586 |
# 带PATH_PREFIX的登录端点(如果配置了PATH_PREFIX)
|
| 587 |
if PATH_PREFIX:
|