This commit is contained in:
hero920103 committed 2026-10-19 01:13:17 +08:00
1 parent 5718a00e31
commit 1850ac640e
226 files changed
+37772 -12071

No files matched your search

+12 -22
View File
@@ -2,11 +2,11 @@ package controllers
import (
"encoding/json"
"fmt"
"io"
"strings"
"server/models"
"server/pkg/identity"
"server/pkg/jwtutil"
"server/services/wechatmp"
@@ -25,22 +25,7 @@ type BackendWechatMpController struct {
}
func (c *BackendWechatMpController) claims() (*jwtutil.Claims, error) {
auth := c.Ctx.Request.Header.Get("Authorization")
if auth == "" {
return nil, fmt.Errorf("未登录")
}
parts := strings.SplitN(auth, " ", 2)
if len(parts) != 2 || parts[0] != "Bearer" {
return nil, fmt.Errorf("认证信息格式错误")
}
claims, err := jwtutil.ParseToken(parts[1])
if err != nil {
return nil, fmt.Errorf("无效的token")
}
if claims.UserType != "backend" && claims.UserType != "app" {
return nil, fmt.Errorf("无权访问")
}
return claims, nil
return identity.Claims(c.Ctx.Request.Header.Get("Authorization"), identity.EndApp, identity.EndBackend)
}
func (c *BackendWechatMpController) jsonErr(httpStatus, bizCode int, msg string) {
@@ -80,7 +65,8 @@ func (c *BackendWechatMpController) readBody(out interface{}) bool {
func (c *BackendWechatMpController) BindStart() {
claims, err := c.claims()
if err != nil {
c.jsonErr(401, 401, err.Error())
code := identity.Status(err)
c.jsonErr(code, code, err.Error())
return
}
uid := uint64(claims.UserID)
@@ -105,7 +91,8 @@ func (c *BackendWechatMpController) BindStart() {
func (c *BackendWechatMpController) BindStatus() {
claims, err := c.claims()
if err != nil {
c.jsonErr(401, 401, err.Error())
code := identity.Status(err)
c.jsonErr(code, code, err.Error())
return
}
scene := strings.TrimSpace(c.GetString("scene"))
@@ -128,7 +115,8 @@ func (c *BackendWechatMpController) BindStatus() {
func (c *BackendWechatMpController) BindConfirm() {
claims, err := c.claims()
if err != nil {
c.jsonErr(401, 401, err.Error())
code := identity.Status(err)
c.jsonErr(code, code, err.Error())
return
}
var p struct {
@@ -175,7 +163,8 @@ func (c *BackendWechatMpController) BindConfirm() {
func (c *BackendWechatMpController) MyBinding() {
claims, err := c.claims()
if err != nil {
c.jsonErr(401, 401, err.Error())
code := identity.Status(err)
c.jsonErr(code, code, err.Error())
return
}
follower, err := wechatmp.GetFollowerByUser(models.WechatBindTypeTenantUser, uint64(claims.UserID))
@@ -202,7 +191,8 @@ func (c *BackendWechatMpController) MyBinding() {
func (c *BackendWechatMpController) Unbind() {
claims, err := c.claims()
if err != nil {
c.jsonErr(401, 401, err.Error())
code := identity.Status(err)
c.jsonErr(code, code, err.Error())
return
}
if err := wechatmp.UnbindByUser(models.WechatBindTypeTenantUser, uint64(claims.UserID)); err != nil {