alist/server/router.go

76 lines
2.4 KiB
Go
Raw Normal View History

2022-06-06 22:08:39 +08:00
package server
2022-06-25 20:38:02 +08:00
import (
2022-06-25 21:34:44 +08:00
"github.com/alist-org/alist/v3/internal/conf"
2022-06-26 19:10:14 +08:00
"github.com/alist-org/alist/v3/server/common"
2022-06-26 19:20:19 +08:00
"github.com/alist-org/alist/v3/server/controllers"
2022-06-26 19:10:14 +08:00
"github.com/alist-org/alist/v3/server/middlewares"
2022-06-25 20:38:02 +08:00
"github.com/gin-contrib/cors"
"github.com/gin-gonic/gin"
)
func Init(r *gin.Engine) {
2022-06-25 21:34:44 +08:00
common.SecretKey = []byte(conf.Conf.JwtSecret)
2022-06-25 20:38:02 +08:00
Cors(r)
2022-06-25 21:34:44 +08:00
2022-06-28 21:58:46 +08:00
r.GET("/d/*path", middlewares.Down, controllers.Down)
r.GET("/p/*path", middlewares.Down, controllers.Proxy)
2022-06-28 18:00:11 +08:00
2022-06-26 16:39:02 +08:00
api := r.Group("/api", middlewares.Auth)
2022-06-26 19:20:19 +08:00
api.POST("/auth/login", controllers.Login)
api.GET("/auth/current", controllers.CurrentUser)
2022-06-26 19:09:28 +08:00
admin := api.Group("/admin", middlewares.AuthAdmin)
meta := admin.Group("/meta")
2022-06-26 19:20:19 +08:00
meta.GET("/list", controllers.ListMetas)
meta.POST("/create", controllers.CreateMeta)
meta.POST("/update", controllers.UpdateMeta)
meta.POST("/delete", controllers.DeleteMeta)
2022-06-26 19:36:27 +08:00
user := admin.Group("/user")
user.GET("/list", controllers.ListUsers)
user.POST("/create", controllers.CreateUser)
user.POST("/update", controllers.UpdateUser)
user.POST("/delete", controllers.DeleteUser)
2022-06-26 20:00:36 +08:00
account := admin.Group("/account")
account.GET("/list", controllers.ListAccounts)
account.POST("/create", controllers.CreateAccount)
account.POST("/update", controllers.UpdateAccount)
account.POST("/delete", controllers.DeleteAccount)
2022-06-26 20:25:02 +08:00
driver := admin.Group("/driver")
driver.GET("/list", controllers.ListDriverItems)
driver.GET("/names", controllers.ListDriverNames)
driver.GET("/items", controllers.GetDriverItems)
2022-06-27 17:06:10 +08:00
setting := admin.Group("/setting")
2022-06-28 14:18:10 +08:00
setting.GET("/get", controllers.GetSetting)
2022-06-27 17:06:10 +08:00
setting.GET("/list", controllers.ListSettings)
setting.POST("/save", controllers.SaveSettings)
setting.POST("/delete", controllers.DeleteSetting)
2022-06-28 14:18:10 +08:00
setting.POST("/reset_token", controllers.ResetToken)
2022-06-27 17:06:10 +08:00
public := api.Group("/public")
public.GET("/settings", controllers.PublicSettings)
2022-06-28 14:18:10 +08:00
public.Any("/list", controllers.FsList)
2022-06-28 15:12:40 +08:00
public.Any("/get", controllers.FsGet)
2022-06-29 16:08:55 +08:00
fs := api.Group("/fs", middlewares.AuthWrite)
fs.POST("/mkdir", controllers.FsMkdir)
fs.POST("/rename", controllers.FsRename)
fs.POST("/move", controllers.FsMove)
fs.POST("/copy", controllers.FsCopy)
fs.POST("/remove", controllers.FsRemove)
fs.POST("/put", controllers.FsPut)
fs.POST("/link", controllers.Link)
2022-06-25 20:38:02 +08:00
}
func Cors(r *gin.Engine) {
config := cors.DefaultConfig()
config.AllowAllOrigins = true
2022-06-29 16:08:55 +08:00
config.AllowHeaders = append(config.AllowHeaders, "Authorization", "range", "File-Path")
2022-06-25 20:38:02 +08:00
r.Use(cors.New(config))
}