package router import ( "github.com/gin-gonic/gin" "toutoukan/controllers/article" "toutoukan/controllers/article/getArticleNum" "toutoukan/controllers/comments/getcomments" "toutoukan/controllers/comments/publishComments" "toutoukan/controllers/goods" "toutoukan/controllers/kills" "toutoukan/controllers/search" "toutoukan/controllers/system" "toutoukan/controllers/user" "toutoukan/init/ratelimit" ) func SetupRouter() *gin.Engine { r := gin.Default() apiGroup := r.Group("/user") //apiGroup.Use(hystrix.CircuitBreakerMiddleware("user_api")) { apiGroup.POST("/login", user.UserLogin) apiGroup.POST("/kill", ratelimit.RateLimitMiddleware(), kills.Userkill) apiGroup.POST("/getscore", user.GetScore) apiGroup.POST("/getInfo", user.GetUserInfo) } //r.GET("/socket", jwt.JWTAuthMiddleware(), func(c *gin.Context) { // socket.WebsocketHandler(c) //}) systemGroup := r.Group("/system") { systemGroup.POST("/sendMsg", system.SendMsg) } searchGroup := r.Group("/search") { searchGroup.POST("/usersearch", search.DataSearch) searchGroup.POST("/insert", search.InsertDocument) } articleGroup := r.Group("/article") { articleGroup.POST("/get", article.ArticleListget) articleGroup.POST("/vote", article.VoteArticle) articleGroup.POST("/create", article.CreateArticle) articleGroup.POST("/delete", article.DeleteArticle) articleGroup.POST("/getnum", getArticleNum.GetArticlenum) } goodsGroup := r.Group("/goods") { goodsGroup.GET("/getgoodslist", goods.GetGoods) } commentGroup := r.Group("/comment") { commentGroup.POST("/get", getcomments.GetComments) commentGroup.POST("/publish", publishComments.PublishComment) } return r }