Files
alist/server/router.go
2021-09-04 19:52:56 +08:00

40 lines
1.2 KiB
Go

package server
import (
"github.com/Xhofe/alist/conf"
"github.com/Xhofe/alist/server/controllers"
"github.com/gin-contrib/static"
"github.com/gin-gonic/gin"
log "github.com/sirupsen/logrus"
)
// InitRouter init router
func InitRouter(engine *gin.Engine) {
log.Infof("初始化路由...")
engine.Use(CorsHandler())
engine.Use(static.Serve("/", static.LocalFile(conf.Conf.Server.Static, false)))
engine.NoRoute(func(c *gin.Context) {
c.File(conf.Conf.Server.Static + "/index.html")
})
InitApiRouter(engine)
}
// InitApiRouter init api router
func InitApiRouter(engine *gin.Engine) {
apiV2 := engine.Group("/api")
{
apiV2.GET("/info", controllers.Info)
apiV2.POST("/get", controllers.Get)
apiV2.POST("/path", controllers.Path)
apiV2.POST("/local_search", controllers.LocalSearch)
apiV2.POST("/global_search", controllers.GlobalSearch)
apiV2.POST("/rebuild", controllers.RebuildTree)
apiV2.POST("/office_preview/:drive", controllers.OfficePreview)
apiV2.POST("/video_preview/:drive", controllers.VideoPreview)
apiV2.POST("/video_preview_play_info/:drive", controllers.VideoPreviewPlayInfo)
engine.GET("/d/*path", controllers.Down)
engine.GET("/p/*path",controllers.Proxy)
}
}