説明なし
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

token_service.go 1.0KB

12345678910111213141516171819202122232425262728293031323334
  1. package token
  2. import (
  3. "fmt"
  4. "git.x2erp.com/qdy/go-base/config"
  5. "git.x2erp.com/qdy/go-base/ctx"
  6. "git.x2erp.com/qdy/go-base/logger"
  7. "git.x2erp.com/qdy/go-base/model/request/configreq"
  8. "git.x2erp.com/qdy/go-base/model/response"
  9. "git.x2erp.com/qdy/go-base/util"
  10. "git.x2erp.com/qdy/go-base/util/jwt"
  11. )
  12. // CreateConfigureToken 建立访问配置中心token
  13. func CreateConfigureToken(tokenRequest *configreq.ConfigTokenRequest, reqCtx *ctx.RequestContext) *response.QueryResult[string] {
  14. claims := &jwt.Claims{
  15. UserID: tokenRequest.ServiceName,
  16. ProjectID: tokenRequest.ProjectID,
  17. Username: "test-qdy",
  18. TenantID: "test-TenantID",
  19. }
  20. secretKey := config.GetServiceConfig().SecretKey
  21. token, err := jwt.CreateTokenDays(claims, tokenRequest.ExpiresDays, secretKey)
  22. if err != nil {
  23. logger.ErrorC(reqCtx, fmt.Sprintf("建立token产生错误: %v", err))
  24. return util.CreateErrorResult[string](fmt.Sprintf("建立token产生错误: %v", err), reqCtx)
  25. }
  26. logger.Debug("建立token成功!")
  27. return util.CreateSuccessResultData(token, reqCtx)
  28. }