JWT 鉴权失败不能只返回“未登录”。过期、签名不合法、格式错误、用户被禁用,背后的处理方式不同。

对前端可以统一返回 401,但日志里要记录具体原因。过期可以引导刷新 token,签名错误则更像异常访问,需要观察频率。

claims, err := parser.Parse(token)
if errors.Is(err, ErrExpired) { ... }

不要把用户敏感信息放进 JWT payload。JWT 默认只是编码,不是加密,任何拿到 token 的人都能解码内容。

分类: Gin 实战 标签: Gin 安全 错误处理

评论

-- 评论已关闭 --

全部评论