重命名包 client 为 edge;重命名包 server 为 gateway

This commit is contained in:
2025-05-16 17:04:03 +08:00
parent 22f3c37478
commit 20ac7dbd91
37 changed files with 65 additions and 75 deletions

View File

@@ -0,0 +1,32 @@
package handlers
import (
"github.com/gofiber/fiber/v2"
"proxy-server/gateway/app"
"proxy-server/gateway/core"
)
type AuthReq struct {
Port uint16 `json:"port"`
core.Permit
}
func Auth(ctx *fiber.Ctx) (err error) {
// 安全验证
var sec core.SecuredReq
if err := ctx.BodyParser(&sec); err != nil {
return err
}
// 获取请求参数
req, err := core.Decrypt[AuthReq](&sec, app.PlatformSecret)
if err != nil {
return err
}
// 保存授权配置
app.Permits.Store(req.Port, &req.Permit)
return nil
}

View File

@@ -0,0 +1,35 @@
package handlers
import (
"fmt"
"github.com/gofiber/fiber/v2"
"proxy-server/gateway/debug"
"slices"
)
func GetConsuming(c *fiber.Ctx) error {
list := debug.ConsumingList()
// sort by total time
slices.SortFunc(list, func(a debug.Consuming, b debug.Consuming) int {
if a.Total < b.Total {
return 1
} else if a.Total > b.Total {
return -1
}
return 0
})
// map to string
strList := make([]string, len(list))
for i := 0; i < len(list); i++ {
times := list[i]
strList[i] = fmt.Sprintf("Auth: %s, Data: %s, Proxy: %s, Total: %s", times.Auth, times.Data, times.Proxy, times.Total)
}
return c.JSON(strList)
}
func RestConsuming(c *fiber.Ctx) error {
debug.InitConsumingList()
return c.JSON(fiber.Map{
"message": "success",
})
}

12
gateway/web/router.go Normal file
View File

@@ -0,0 +1,12 @@
package web
import (
"github.com/gofiber/fiber/v2"
"proxy-server/gateway/web/handlers"
)
func Router(r *fiber.App) {
var debug = r.Group("/debug")
debug.Get("/debug/consuming/list", handlers.GetConsuming)
debug.Get("/debug/consuming/reset", handlers.RestConsuming)
}

41
gateway/web/web.go Normal file
View File

@@ -0,0 +1,41 @@
package web
import (
"proxy-server/gateway/env"
"strconv"
"github.com/gofiber/fiber/v2"
)
type Server struct {
web *fiber.App
}
func New() *Server {
return &Server{}
}
func (s *Server) Run() error {
s.web = fiber.New()
// 配置中间件和路由
Router(s.web)
// 启动服务
address := ":" + strconv.Itoa(int(env.AppWebPort))
err := s.web.Listen(address)
if err != nil {
return err
}
return nil
}
func (s *Server) Stop() error {
err := s.web.Shutdown()
if err != nil {
return err
}
return nil
}