feat(auth): 记住登录 —— 刷新令牌持久化,不再在本机保存明文密码
CI / backend (push) Waiting to run

- 后端:新增 refresh_token 模型与服务,登录签发 refresh token,支持静默续期与登出撤销
  (backend/internal/model/refresh_token.go, backend/internal/service/auth/refresh.go,
   auth_controller/auth_service/dto/router/jwt 配套改动)
- 前端:登录页改为「记住登录」(只持久化引导令牌与用户名,不落盘密码),401 自动刷新并重试原请求
  (stores/user.js, api/request.js, api/auth.js, main.js, Login.vue 配套改动)
- 部署:已在容器中验证运行(镜像构建于 2026-11-03 00:50,服务 healthy)
- 安全:仓库内无任何 .env/证书/密钥文件变更
This commit is contained in:
Logan.Li committed 2026-11-03 01:12:22 +08:00
1 parent 4bf7fb6e5c
commit a01b89f942
13 files changed
+531 -208

No files matched your search

+3
View File
@@ -124,6 +124,9 @@ func SetupRouter(db *gorm.DB, cfg *config.Config) *gin.Engine {
authGroup := api.Group("/auth")
{
register(authGroup, "POST", "/login", middleware.RateLimit(0.2, 5), authController.Login)
// 刷新/登出按刷新令牌鉴权,不需要访问令牌(访问令牌可能已过期) // Logan.Li
register(authGroup, "POST", "/refresh", middleware.RateLimit(0.5, 20), authController.Refresh)
register(authGroup, "POST", "/logout", middleware.RateLimit(0.5, 20), authController.Logout)
}
// ============ 客户端授权契约(无需认证,供外部工具调用) ============