Some checks failed
Build docker and publish / build (20.15.1) (push) Has been cancelled
refactor: 重构用户模型和密码验证逻辑 feat(epay): 添加支付类型支持 docs: 添加安装和配置指南文档 fix: 修复优惠券过期检查逻辑 perf: 优化设备解绑缓存清理流程 test: 添加密码验证测试用例 chore: 更新依赖版本
50 lines
1.5 KiB
Go
50 lines
1.5 KiB
Go
package server
|
|
|
|
import (
|
|
"fmt"
|
|
"net/http"
|
|
"strconv"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/perfect-panel/server/internal/logic/server"
|
|
"github.com/perfect-panel/server/internal/svc"
|
|
"github.com/perfect-panel/server/internal/types"
|
|
"github.com/perfect-panel/server/pkg/logger"
|
|
"github.com/perfect-panel/server/pkg/result"
|
|
)
|
|
|
|
// QueryServerProtocolConfigHandler Get Server Protocol Config
|
|
func QueryServerProtocolConfigHandler(svcCtx *svc.ServiceContext) func(c *gin.Context) {
|
|
return func(c *gin.Context) {
|
|
var req types.QueryServerConfigRequest
|
|
|
|
serverID, err := strconv.ParseInt(c.Param("server_id"), 10, 64)
|
|
if err != nil {
|
|
logger.Debugf("[QueryServerProtocolConfigHandler] - strconv.ParseInt(server_id) error: %v, Param: %s", err, c.Param("server_id"))
|
|
c.String(http.StatusBadRequest, "Invalid Params")
|
|
c.Abort()
|
|
return
|
|
}
|
|
req.ServerID = serverID
|
|
|
|
if err = c.ShouldBindQuery(&req); err != nil {
|
|
logger.Debugf("[QueryServerProtocolConfigHandler] - ShouldBindQuery error: %v, Query: %v", err, c.Request.URL.Query())
|
|
c.String(http.StatusBadRequest, "Invalid Params")
|
|
c.Abort()
|
|
return
|
|
}
|
|
|
|
fmt.Printf("[QueryServerProtocolConfigHandler] - ShouldBindQuery request: %+v\n", req)
|
|
|
|
if svcCtx.Config.Node.NodeSecret != req.SecretKey {
|
|
c.String(http.StatusUnauthorized, "Unauthorized")
|
|
c.Abort()
|
|
return
|
|
}
|
|
|
|
l := server.NewQueryServerProtocolConfigLogic(c.Request.Context(), svcCtx)
|
|
resp, err := l.QueryServerProtocolConfig(&req)
|
|
result.HttpResult(c, resp, err)
|
|
}
|
|
}
|