All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 4m31s
问题描述: - 认证中间件存储的 UserID 是 uint 类型 - 日志中间件和错误上下文错误地将其断言为 string 类型 - 导致所有认证请求在记录访问日志时发生 panic 修复内容: 1. pkg/logger/middleware.go - 修改 UserID 变量类型从 string 为 uint - 使用安全的类型断言 (uid.(uint)) - 使用 zap.Uint 记录日志 2. pkg/errors/context.go - 修改 UserID 类型断言从 string 为 uint - 使用 strconv.FormatUint 转换为 string 用于错误上下文 影响范围: - 修复所有需要认证的接口的 panic 错误 - 包括 /api/admin/shops, /api/admin/me, /api/admin/permissions 等
2.3 KiB
2.3 KiB