Skip to content

Commit 3149a9f

Browse files
committed
chore: 调整登录策略,dev模式下api文档登录不校验验证码以适应开发调试需要
1 parent 9dc84d7 commit 3149a9f

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

dash-fastapi-backend/module_admin/service/login_service.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from module_admin.dao.login_dao import *
1212
from module_admin.service.user_service import UserService
1313
from module_admin.dao.user_dao import *
14-
from config.env import JwtConfig, RedisInitKeyConfig
14+
from config.env import AppConfig, JwtConfig, RedisInitKeyConfig
1515
from utils.pwd_util import *
1616
from utils.response_util import *
1717
from utils.message_util import *
@@ -201,8 +201,13 @@ async def authenticate_user(request: Request, query_db: Session, login_user: Use
201201
if login_user.user_name == account_lock:
202202
logger.warning("账号已锁定,请稍后再试")
203203
raise LoginException(data="", message="账号已锁定,请稍后再试")
204-
# 判断是否开启验证码,开启则验证,否则不验证
205-
if login_user.captcha_enabled:
204+
# 判断请求是否来自于api文档
205+
request_from_swagger = request.headers.get('referer').endswith('docs') if request.headers.get('referer') else False
206+
request_from_redoc = request.headers.get('referer').endswith('redoc') if request.headers.get('referer') else False
207+
# 判断是否开启验证码,开启则验证,否则不验证(dev模式下来自API文档的登录请求不检验)
208+
if not login_user.captcha_enabled or ((request_from_swagger or request_from_redoc) and AppConfig.app_env == 'dev'):
209+
pass
210+
else:
206211
await check_login_captcha(request, login_user)
207212
user = login_by_account(query_db, login_user.user_name)
208213
if not user:

0 commit comments

Comments
 (0)