Use utils.HttpResponse/Abort to replace c.JSON/Abort
All checks were successful
Build Backend (NixCN CMS) TeamCity build finished
Build Frontend (NixCN CMS) TeamCity build finished

Signed-off-by: Asai Neko <sugar@sne.moe>
This commit is contained in:
2026-01-06 12:49:55 +08:00
parent 70846e0d1e
commit 6a9c013799
14 changed files with 203 additions and 116 deletions

View File

@@ -2,6 +2,7 @@ package middleware
import (
"nixcn-cms/data"
"nixcn-cms/utils"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
@@ -14,19 +15,19 @@ func Permission(requiredLevel uint) gin.HandlerFunc {
if !ok {
userIdOrig, ok := c.Get("user_id")
if !ok || userIdOrig.(string) == "" {
c.AbortWithStatusJSON(401, gin.H{"status": "missing user id"})
utils.HttpAbort(c, 401, "", "missing user id")
return
}
userId, err := uuid.Parse(userIdOrig.(string))
if err != nil {
c.AbortWithStatusJSON(500, gin.H{"status": "error parsing user id"})
utils.HttpAbort(c, 500, "", "error parsing user id")
return
}
userData, err := new(data.User).GetByUserId(userId)
if err != nil {
c.AbortWithStatusJSON(404, gin.H{"status": "user not found"})
utils.HttpAbort(c, 404, "", "user not found")
return
}
@@ -37,7 +38,7 @@ func Permission(requiredLevel uint) gin.HandlerFunc {
}
if permissionLevel < requiredLevel {
c.AbortWithStatusJSON(403, gin.H{"status": "permission denied"})
utils.HttpAbort(c, 403, "", "permission denied")
return
}