package main import ( "fmt" "git.ouxuan.net/3136352472/go-service-template/govue" "git.ouxuan.net/3136352472/go-service-template/pool" "github.com/gin-gonic/gin" "mime" "path/filepath" "runtime" ) func main() { runtime.GOMAXPROCS(runtime.NumCPU()) r := gin.Default() govue.SetPoolConfig(pool.Config{ MinIdle: 100, }) gv, err := govue.NewGoVueDefaultConfig() if err != nil { panic(err) } r.NoRoute(func(context *gin.Context) { raw, err := gv.LoadStaticResources(context.Request) if err != nil { context.Writer.Write([]byte(fmt.Sprintln("服务器错误", err.Error()))) return } mime.TypeByExtension(filepath.Ext(context.Request.URL.Path)) context.Writer.Header().Set("Content-Type", mime.TypeByExtension(filepath.Ext(context.Request.URL.Path))) context.Writer.WriteHeader(200) _, _ = context.Writer.Write(raw) }) r.Use(func(context *gin.Context) { context.Header("Access-Control-Allow-Origin", "*") context.Header("Access-Control-Allow-Methods", "POST, GET, OPTIONS, PUT, DELETE") context.Header("Access-Control-Allow-Headers", "Action, Module, X-PINGOTHER, Content-Type, Content-Disposition") }) r.GET("/test", func(context *gin.Context) { context.JSON(200, map[string]interface{}{ "code": 0, "data": map[string]string{ "method": context.Request.Method, "query": context.Request.URL.Query().Encode(), }, }) }) gv.StartPoolLog() r.Run("127.0.0.1:8080") }