Files
tyapi-server/scripts/generate_admin_token_simple.go
2025-08-05 17:20:49 +08:00

56 lines
1.4 KiB
Go

package main
import (
"fmt"
"log"
"tyapi-server/internal/config"
"tyapi-server/internal/shared/middleware"
"go.uber.org/zap"
)
func main() {
// 固定的用户信息
userID := "93b2fb79-4def-4ad2-8004-08943fcf2fa9"
phone := "17537188270"
email := ""
userType := "user"
// 加载配置文件
cfg, err := config.LoadConfig()
if err != nil {
log.Fatalf("加载配置文件失败: %v", err)
}
// 创建logger
logger, err := zap.NewProduction()
if err != nil {
log.Fatalf("创建logger失败: %v", err)
}
defer logger.Sync()
// 创建JWT认证中间件
jwtAuth := middleware.NewJWTAuthMiddleware(cfg, logger)
// 生成token
token, err := jwtAuth.GenerateToken(userID, phone, email, userType)
if err != nil {
log.Fatalf("生成token失败: %v", err)
}
// 输出结果
fmt.Println("=== 管理员Token生成成功 ===")
fmt.Printf("用户ID: %s\n", userID)
fmt.Printf("手机号: %s\n", phone)
fmt.Printf("邮箱: %s\n", email)
fmt.Printf("用户类型: %s\n", userType)
fmt.Printf("过期时间: %s\n", cfg.JWT.ExpiresIn.String())
fmt.Println("\n=== Token ===")
fmt.Println(token)
fmt.Println("\n=== 使用说明 ===")
fmt.Println("在API请求的Authorization头部中使用:")
fmt.Printf("Authorization: Bearer %s\n", token)
fmt.Println("\n=== 示例curl命令 ===")
fmt.Printf("curl -H \"Authorization: Bearer %s\" http://localhost:8080/api/v1/user/profile\n", token)
}