package test import ( "github.com/gofiber/fiber/v2" "gofiber.study.skcks.cn/common/errorx" "gofiber.study.skcks.cn/common/response" "gofiber.study.skcks.cn/global" ) func RegisterController(app *fiber.App) { group := app.Group("/test") jwtEncode(group) jwtDecode(group) } // jwtEncode jwt token 生成测试 // // @Summary jwt token 生成测试 // @Description jwt token 生成测试 // @Tags Test // @Accept json // @Produce json // @Param vo body global.UserClaims true "userClaims" // @Success 200 {object} response.Response{data=string} // @Failure default {object} errorx.CodeErrorResponse // @Router /test/jwt [post] func jwtEncode(r fiber.Router) { r.Add(fiber.MethodPost, "/jwt", func(ctx *fiber.Ctx) error { claims := global.UserClaims{} err := ctx.BodyParser(&claims) if err = errorx.ParseError(err); err != nil { return ctx.JSON(err) } token, err := global.GetToken(claims) if err = errorx.ParseError(err); err != nil { return ctx.JSON(err) } return ctx.JSON(response.NewResponse(token)) }) } // jwtDecode jwt token 解析测试 // // @Summary jwt token 解析测试 // @Description jwt token 解析测试 // @Tags Test // @Accept json // @Produce json // @Param token query string true "token" // @Success 200 {object} response.Response{data=global.UserClaims} // @Failure default {object} errorx.CodeErrorResponse // @Router /test/jwt [get] func jwtDecode(r fiber.Router) { r.Add(fiber.MethodGet, "/jwt", func(ctx *fiber.Ctx) error { token := ctx.Query("token") claims, err := global.ParseToken(token) if err = errorx.ParseError(err); err != nil { return ctx.JSON(err) } return ctx.JSON(response.NewResponse(claims)) }) }