2FA 早已是死代码:TOTP 相关端点标注为前端未调用,前端唯一的 two_factor_auth 是硬编码 false,没有任何入口能打开它。 - 删除 TwoFactorAuthAPI、CheckTFARequiredAPI、_totp* 辅助函数、 TwoFactorAuthCodeSerializer 及各 serializer 的 tfa_code 字段 - 删除管理端写 two_factor_auth/tfa_token 的分支。登录已不再校验 TOTP,若保留写入路径,置 True 会变成静默的安全降级 - 删除 User.two_factor_auth / tfa_token 字段(迁移 0009) - 移除 django-dbconn-retry:仅挂在 INSTALLED_APPS,代码零引用。 DATABASES 未配置 CONN_MAX_AGE(默认 0),本就没有持久连接需要 重连修复。要开持久连接用 Django 自带的 CONN_HEALTH_CHECKS - requests 换成 httpx(openai 已经引入):删除废弃的 ReleaseNotesAPI,judge dispatcher 显式传 timeout=None 以保持 requests 原本的无超时行为,判题请求是同步等结果的 依赖净减 5 个:otpauth、qrcode、requests、charset-normalizer、 django-dbconn-retry Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
50 lines
1.8 KiB
Python
50 lines
1.8 KiB
Python
from django.urls import path
|
|
|
|
from utils.captcha.views import CaptchaAPIView
|
|
|
|
from ..views.oj import (
|
|
SSOAPI,
|
|
ApplyResetPasswordAPI,
|
|
AvatarUploadAPI,
|
|
Metrics,
|
|
OpenAPIAppkeyAPI,
|
|
ProfileProblemDisplayIDRefreshAPI,
|
|
ResetPasswordAPI,
|
|
SessionManagementAPI,
|
|
UserActivityRankAPI,
|
|
UserChangeEmailAPI,
|
|
UserChangePasswordAPI,
|
|
UserLoginAPI,
|
|
UserLogoutAPI,
|
|
UsernameOrEmailCheck,
|
|
UserProblemRankAPI,
|
|
UserProfileAPI,
|
|
UserRankAPI,
|
|
UserRegisterAPI,
|
|
)
|
|
|
|
urlpatterns = [
|
|
path("login", UserLoginAPI.as_view()),
|
|
path("logout", UserLogoutAPI.as_view()),
|
|
path("register", UserRegisterAPI.as_view()),
|
|
path("change_password", UserChangePasswordAPI.as_view()), # DEPRECATED: 前端未调用
|
|
path("change_email", UserChangeEmailAPI.as_view()), # DEPRECATED: 前端未调用
|
|
path("apply_reset_password", ApplyResetPasswordAPI.as_view()), # DEPRECATED: 前端未调用
|
|
path("reset_password", ResetPasswordAPI.as_view()), # DEPRECATED: 前端未调用
|
|
path("captcha", CaptchaAPIView.as_view()),
|
|
path("check_username_or_email", UsernameOrEmailCheck.as_view()), # DEPRECATED: 前端未调用
|
|
path("profile", UserProfileAPI.as_view(), name="user_profile_api"),
|
|
path("profile/fresh_display_id", ProfileProblemDisplayIDRefreshAPI.as_view()),
|
|
path("metrics", Metrics.as_view()),
|
|
path("upload_avatar", AvatarUploadAPI.as_view()),
|
|
path("user_rank", UserRankAPI.as_view()),
|
|
path("user_activity_rank", UserActivityRankAPI.as_view()),
|
|
path("user_problem_rank", UserProblemRankAPI.as_view()),
|
|
path("sessions", SessionManagementAPI.as_view()), # DEPRECATED: 前端未调用
|
|
path(
|
|
"open_api_appkey", # DEPRECATED: 前端未调用
|
|
OpenAPIAppkeyAPI.as_view(),
|
|
),
|
|
path("sso", SSOAPI.as_view()), # DEPRECATED: 前端未调用
|
|
]
|