123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- package router
- import (
- youngeetalentapi "youngmini_server/app/api/youngee_talent_api"
- "youngmini_server/app/system/assignment"
- "youngmini_server/app/system/sectask"
- "youngmini_server/app/system/wxpay"
- "youngmini_server/middleware"
- "github.com/gogf/gf/frame/g"
- "github.com/gogf/gf/net/ghttp"
- )
- // MiddlewareCORS 允许跨域请求中间件
- func MiddlewareCORS(r *ghttp.Request) {
- corsOptions := r.Response.DefaultCORSOptions()
- corsOptions.AllowHeaders = "Authorization,Content-Length,X-CSRF-Token,Token,session,X_Requested_With,Accept,Origin,Host,Connection,Accept-Encoding,Accept-Language,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Pragma"
- corsOptions.ExposeHeaders = "Content-Length,Access-Control-Allow-Origin,Access-Control-Allow-Headers,Content-Language,Expires,Last-Modified,Pragma,FooBar"
- corsOptions.MaxAge = 1728000
- //corsOptions := ghttp.CORSOptions{
- //AllowOrigin: "*",
- //AllowMethods: "POST,GET,OPTIONS,PUT,DELETE,UPDATE",
- //AllowCredentials: "false",
- //MaxAge: 1728000,
- //AllowHeaders: "Authorization,Content-Length,X-CSRF-Token,Token,session,X_Requested_With,Accept,Origin,Host,Connection,Accept-Encoding,Accept-Language,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Pragma",
- //ExposeHeaders: "Content-Length,Access-Control-Allow-Origin,Access-Control-Allow-Headers,Content-Language,Expires,Last-Modified,Pragma,FooBar",
- //}
- //corsOptions.AllowDomain = []string{"goframe.org", "johng.cn"}
- //corsOptions.AllowHeaders = "Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,Keep-Alive,X-Requested-With,X-Forwarded-*,Pragma,Cache-Control,If-Modified-Since,userToken,appid"
- r.Response.CORS(corsOptions)
- r.Middleware.Next()
- }
- // MiddlewareAuth 用户认证中间件
- // func MiddlewareAuth(r *ghttp.Request) {
- // //排除路径
- // array := garray.NewFrom(g.Slice{"/admin/account"})
- // if array.Contains(r.RequestURI) == false {
- // userData, err := backstage_service.Token.AuthorizationGetUserData(r)
- // if err != nil {
- // r.Response.WriteStatus(http.StatusForbidden)
- // response.JsonExit(r, http.StatusForbidden, err.Error())
- // }
- // if userData == nil {
- // r.Response.WriteStatus(http.StatusUnauthorized)
- // response.JsonExit(r, http.StatusForbidden, "用户不存在")
- // }
- // }
- // // 中间件处理逻辑
- // r.Middleware.Next()
- // }
- // MiddlewareSuperAuth 超级管理员可以操作的登录接口
- // func MiddlewareSuperAuth(r *ghttp.Request) {
- // // 排除路径
- // userData, _ := backstage_service.Token.AuthorizationGetUserData(r)
- // if userData.User != "10000000" {
- // r.Response.WriteStatus(http.StatusPaymentRequired)
- // response.JsonExit(r, http.StatusPaymentRequired, "没有权限操作")
- // }
- // // 中间件处理逻辑
- // r.Middleware.Next()
- // }
- func init() {
- s := g.Server()
- // 解决跨域
- s.BindMiddleware("/*", MiddlewareCORS)
- // v2小程序端接口
- s.Group("/youngee/c", func(group *ghttp.RouterGroup) {
- group.Middleware(middleware.ErrorHandler)
- s.BindHandler("/ping", func(r *ghttp.Request) {
- r.Response.Write("哈喽世界!")
- })
- // group.GET("/ping", func(r *ghttp.Request) {
- // r.Response.Write("哈喽世界!")
- // })
- // 达人不需要鉴权的接口
- group.GET("/g", youngeetalentapi.TalentGetApi)
- group.POST("/p", youngeetalentapi.TalentPostApi)
- // 达人需要鉴权的接口
- group.Group("/t", func(group *ghttp.RouterGroup) {
- group.Middleware(middleware.DuplicateVerify, middleware.WxAuth)
- group.GET("/g", youngeetalentapi.TalentAuthGetApi)
- group.POST("/p", youngeetalentapi.TalentAuthPostApi)
- })
- })
- // v2小程序端接口
- s.Group("/youngee/c/api", func(group *ghttp.RouterGroup) {
- group.Middleware(middleware.ErrorHandler)
- //// 达人不需要鉴权的接口
- //group.GET("/g", youngeetalentapi.TalentGetApi)
- //group.POST("/p", youngeetalentapi.TalentPostApi)
- group.Group("/selection", func(group *ghttp.RouterGroup) {
- group.GET("/list", sectask.SecTask.List)
- })
- // 达人需要鉴权的接口
- group.Group("/t", func(group *ghttp.RouterGroup) {
- group.Middleware(middleware.DuplicateVerify, middleware.WxAuth)
- group.Group("/secTask", func(group *ghttp.RouterGroup) {
- group.GET("/list", sectask.SecTask.List)
- })
- group.Group("/assignment", func(group *ghttp.RouterGroup) {
- group.GET("/list", assignment.Assignment.List)
- group.POST("/add", assignment.Assignment.Add)
- })
- group.Group("/wxpay", func(group *ghttp.RouterGroup) {
- group.POST("/pay", wxpay.WxPay.WxPay)
- })
- })
- })
- }
|