Cloudreve/routers/router.go

42 lines
743 B
Go
Raw Normal View History

2019-11-05 12:31:22 +08:00
package routers
import (
2019-11-11 19:13:17 +08:00
"cloudreve/middleware"
"cloudreve/pkg/conf"
"cloudreve/routers/controllers"
2019-11-05 12:31:22 +08:00
"github.com/gin-gonic/gin"
)
2019-11-12 15:34:54 +08:00
// InitRouter 初始化路由
2019-11-05 12:31:22 +08:00
func InitRouter() *gin.Engine {
r := gin.Default()
2019-11-11 19:13:17 +08:00
// 中间件
r.Use(middleware.Session(conf.SystemConfig.SessionSecret))
2019-11-12 15:34:54 +08:00
r.Use(middleware.CurrentUser())
2019-11-11 19:13:17 +08:00
2019-11-05 19:49:56 +08:00
// 顶层路由分组
2019-11-05 12:31:22 +08:00
v3 := r.Group("/Api/V3")
{
2019-11-05 19:49:56 +08:00
// 测试用路由
2019-11-05 12:31:22 +08:00
v3.GET("Ping", controllers.Ping)
2019-11-05 19:49:56 +08:00
// 用户登录
2019-11-11 19:13:17 +08:00
v3.POST("User/Session", controllers.UserLogin)
2019-11-05 12:31:22 +08:00
2019-11-12 15:34:54 +08:00
// 需要登录保护的
auth := v3.Group("")
auth.Use(middleware.AuthRequired())
{
// 用户类
user := auth.Group("User")
{
// 当前登录用户信息
user.GET("Me", controllers.UserMe)
}
}
2019-11-05 12:31:22 +08:00
}
return r
}