init: taotie-api 项目初始化
This commit is contained in:
45
api/api.go
Normal file
45
api/api.go
Normal file
@@ -0,0 +1,45 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"taotie-api/api/middleware"
|
||||
v1 "taotie-api/api/v1"
|
||||
"taotie-api/api/wrap"
|
||||
"taotie-api/core"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/google/wire"
|
||||
)
|
||||
|
||||
// 依赖注入节点
|
||||
var RouterProd = wire.NewSet(
|
||||
NewRouter,
|
||||
v1.NewUserApi,
|
||||
)
|
||||
|
||||
func NewRouter(cfg *core.Configuration, userApi *v1.UserApi) *gin.Engine {
|
||||
r := gin.Default()
|
||||
|
||||
// cors
|
||||
r.Use(middleware.Cors())
|
||||
|
||||
// 定义路由
|
||||
r.GET("/", func(c *gin.Context) {
|
||||
c.JSON(200, gin.H{
|
||||
"message": "Hello, World!",
|
||||
})
|
||||
})
|
||||
|
||||
apiv1 := r.Group("/api/v1")
|
||||
{
|
||||
apiv1.POST("/login", wrap.Wrap(userApi.Login))
|
||||
apiv1.POST("/register", wrap.Wrap(userApi.Register))
|
||||
}
|
||||
|
||||
apiv1_user := apiv1.Group("/user")
|
||||
apiv1_user.Use(middleware.Auth(cfg))
|
||||
{
|
||||
apiv1_user.GET("/current", wrap.Wrap(userApi.GetCurrentUserInfo))
|
||||
}
|
||||
|
||||
return r
|
||||
}
|
||||
Reference in New Issue
Block a user