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) } }