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

+10 -20
View File
@@ -9,6 +9,7 @@ import (
"time"
"server/models"
"server/pkg/identity"
"server/pkg/jwtutil"
beego "github.com/beego/beego/v2/server/web"
@@ -20,22 +21,7 @@ type BackendAiChatSessionController struct {
}
func (c *BackendAiChatSessionController) sessionClaims() (*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" {
return nil, fmt.Errorf("无权访问")
}
return claims, nil
return identity.Claims(c.Ctx.Request.Header.Get("Authorization"), identity.EndBackend)
}
func (c *BackendAiChatSessionController) sessionJsonErr(httpStatus, bizCode int, msg string) {
@@ -58,7 +44,8 @@ type chatSessionPayload struct {
func (c *BackendAiChatSessionController) List() {
claims, err := c.sessionClaims()
if err != nil {
c.sessionJsonErr(401, 401, err.Error())
code := identity.Status(err)
c.sessionJsonErr(code, code, err.Error())
return
}
@@ -81,7 +68,8 @@ func (c *BackendAiChatSessionController) List() {
func (c *BackendAiChatSessionController) Create() {
claims, err := c.sessionClaims()
if err != nil {
c.sessionJsonErr(401, 401, err.Error())
code := identity.Status(err)
c.sessionJsonErr(code, code, err.Error())
return
}
@@ -123,7 +111,8 @@ func (c *BackendAiChatSessionController) Create() {
func (c *BackendAiChatSessionController) Update() {
claims, err := c.sessionClaims()
if err != nil {
c.sessionJsonErr(401, 401, err.Error())
code := identity.Status(err)
c.sessionJsonErr(code, code, err.Error())
return
}
@@ -176,7 +165,8 @@ func (c *BackendAiChatSessionController) Update() {
func (c *BackendAiChatSessionController) Delete() {
claims, err := c.sessionClaims()
if err != nil {
c.sessionJsonErr(401, 401, err.Error())
code := identity.Status(err)
c.sessionJsonErr(code, code, err.Error())
return
}