sever_tb_LinkedMall-2026082.../server_tb_LinkedMall/cmd/server/main.go

50 lines
1.1 KiB
Go

package main
import (
"fmt"
"log"
"github.com/gofiber/fiber/v2"
"server_tb_LinkedMall/internal/config"
"server_tb_LinkedMall/internal/router"
"server_tb_LinkedMall/internal/service"
)
func main() {
// 加载配置
cfg := config.LoadConfig()
// 检查必要配置
if cfg.AccessKeyId == "" || cfg.AccessKeySecret == "" {
log.Fatal("环境变量 LINKEDMALL_AK 和 LINKEDMALL_SK 必须设置")
}
// 初始化服务
svc, err := service.NewLinkedMallService(cfg)
if err != nil {
log.Fatalf("初始化服务失败: %v", err)
}
// 创建Fiber应用
app := fiber.New(fiber.Config{
AppName: "LinkedMall Server",
ErrorHandler: func(c *fiber.Ctx, err error) error {
return c.Status(fiber.StatusInternalServerError).JSON(fiber.Map{
"Success": false,
"Code": "SERVER_ERROR",
"Message": err.Error(),
})
},
})
// 注册路由
router.SetupRouter(app, svc)
// 启动服务
addr := fmt.Sprintf(":%s", cfg.ServerPort)
log.Printf("启动服务,监听地址: %s", addr)
if err := app.Listen(addr); err != nil {
log.Fatalf("服务启动失败: %v", err)
}
}