misonL commited on
Commit
f93d019
·
verified ·
1 Parent(s): dc200bf

Upload routes.py

Browse files
Files changed (1) hide show
  1. app/web/routes.py +8 -2
app/web/routes.py CHANGED
@@ -121,8 +121,14 @@ async def login_for_access_token(
121
  try:
122
  access_token = create_access_token(data=access_token_data)
123
  login_type = "管理员" if is_admin_login else "普通用户"
124
- logger.info(f"Web UI {login_type}登录成功,用户 Key: {password_value[:8]}... 已签发 JWT。")
125
- response = JSONResponse(content={"access_token": access_token, "token_type": "bearer"})
 
 
 
 
 
 
126
  return response
127
  except ValueError as e:
128
  logger.error(f"无法创建 JWT: {e}")
 
121
  try:
122
  access_token = create_access_token(data=access_token_data)
123
  login_type = "管理员" if is_admin_login else "普通用户"
124
+ logger.info(f"Web UI {login_type}登录成功,用户 Key: {password_value[:8]}... 已签发 JWT,将通过头部返回。")
125
+
126
+ # 返回 204 No Content,并将 token 放在头部
127
+ response = Response(status_code=status.HTTP_204_NO_CONTENT)
128
+ response.headers["X-Access-Token"] = access_token
129
+ response.headers["X-Token-Type"] = "bearer"
130
+ # 需要允许前端JS访问这些自定义头部
131
+ response.headers["Access-Control-Expose-Headers"] = "X-Access-Token, X-Token-Type"
132
  return response
133
  except ValueError as e:
134
  logger.error(f"无法创建 JWT: {e}")