auth.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package controllers
  2. import (
  3. "encoding/base64"
  4. "encoding/json"
  5. "eta/eta_forum_hub/models"
  6. "eta/eta_forum_hub/utils"
  7. "fmt"
  8. "github.com/beego/beego/v2/server/web"
  9. )
  10. type AuthController struct {
  11. web.Controller
  12. }
  13. // CreateAuthCode
  14. // @Description 生成编码
  15. // @Param request body models.CreateAuthCodeReq true "type json string"
  16. // @Success 200 {string} string "获取成功"
  17. // @Router /auth/auth_code [post]
  18. func (this *AuthController) CreateAuthCode() {
  19. br := new(models.BaseResponse).Init()
  20. defer func() {
  21. this.Data["json"] = br
  22. this.ServeJSON()
  23. }()
  24. var req models.CreateAuthCodeReq
  25. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  26. if err != nil {
  27. br.Msg = "参数解析异常!"
  28. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  29. return
  30. }
  31. prefix := map[int]string{
  32. 1: utils.CACHE_FORUM_AUTH_CODE_PREFIX,
  33. 2: utils.CACHE_CRM_AUTH_CODE_PREFIX,
  34. }
  35. str := base64.URLEncoding.EncodeToString([]byte(req.AdminName))
  36. key := fmt.Sprint(prefix[req.Source], str)
  37. br.Ret = 200
  38. br.Success = true
  39. br.Msg = "保存成功"
  40. br.Data = key
  41. }