package register import ( "github.com/gin-gonic/gin" "github.com/sirupsen/logrus" "gitter.top/coco/coco" "pastebin/api_services/v1" "pastebin/config" ) type Router struct{} func NewRouter() *Router { return &Router{} } // Register 注册路由 func (receiver *Router) Register() error { cfg := config.Get() // 从这里开始实例化路由注册器 var register = coco.NewRegister() register.DefaultRouter(coco.WithListenAddress(cfg.ServerListen), coco.WithGinMode(gin.ReleaseMode), coco.WithCors(), coco.WithRecovery()) register.RegisterStruct(&api_servicesv1.PastebinService{}) _ = register.PreRun(func() error { engine := register.RawEngine() engine.Static("/assets", "./webui/dist/assets") engine.NoRoute(func(ctx *gin.Context) { ctx.File("./webui/dist/index.html") }) return nil }) logrus.Infof("api server: http://%s", cfg.ServerListen) register.Run() return nil }