ai-gateway/router/main.go

32 lines
803 B
Go
Raw Normal View History

2023-04-22 12:39:27 +00:00
package router
import (
"embed"
"fmt"
2023-04-22 12:39:27 +00:00
"github.com/gin-gonic/gin"
2024-01-28 11:38:58 +00:00
"github.com/songquanpeng/one-api/common/config"
"github.com/songquanpeng/one-api/common/logger"
"net/http"
"os"
"strings"
2023-04-22 12:39:27 +00:00
)
2024-01-01 10:55:03 +00:00
func SetRouter(router *gin.Engine, buildFS embed.FS) {
2023-04-22 12:39:27 +00:00
SetApiRouter(router)
SetDashboardRouter(router)
2023-04-23 10:24:11 +00:00
SetRelayRouter(router)
frontendBaseUrl := os.Getenv("FRONTEND_BASE_URL")
if config.IsMasterNode && frontendBaseUrl != "" {
frontendBaseUrl = ""
logger.SysLog("FRONTEND_BASE_URL is ignored on master node")
}
if frontendBaseUrl == "" {
2024-01-01 10:55:03 +00:00
SetWebRouter(router, buildFS)
} else {
frontendBaseUrl = strings.TrimSuffix(frontendBaseUrl, "/")
router.NoRoute(func(c *gin.Context) {
c.Redirect(http.StatusMovedPermanently, fmt.Sprintf("%s%s", frontendBaseUrl, c.Request.RequestURI))
})
}
2023-04-22 12:39:27 +00:00
}