33 lines
545 B
Go
33 lines
545 B
Go
package boots
|
|
|
|
import (
|
|
"allapp-go/internal/config"
|
|
"allapp-go/internal/router"
|
|
"fmt"
|
|
|
|
"github.com/gofiber/fiber/v3"
|
|
"github.com/gofiber/fiber/v3/middleware/requestid"
|
|
)
|
|
|
|
func RunServer(cfg *config.Config) (*fiber.App, error) {
|
|
app := fiber.New()
|
|
|
|
// ===== middleware =====
|
|
app.Use(requestid.New())
|
|
|
|
// TODO: 你可以加 logger middleware / recover
|
|
|
|
// ===== router =====
|
|
router.Setup(app)
|
|
|
|
addr := fmt.Sprintf(":%d", cfg.App.Port)
|
|
|
|
go func() {
|
|
if err := app.Listen(addr); err != nil {
|
|
panic(err)
|
|
}
|
|
}()
|
|
|
|
return app, nil
|
|
}
|