您的位置: 主页 > 动态 > 行业资讯 >

go:足球竞猜app

本文摘要:com/alimy/mir/v2/examples/mirc/routes/v1"_"githubcom/alimy/mir/v2/examples/mirc/routes/v1"_"githubcom/alimy/mir/v2/examples/mirc/gen/api/v2""github

接口

go-,支持好几个web框架,内置mirc钢管脚手架,零基础开发设计web应用,省时省力。增加特点:加上echo,iris,macaron的支持,mirc自动生成相对web框架款式的接口代码;支持多层面Group定义,提升转化成代码的包名取名方法;支持应用多goroutine更迅速的自动生成接口代码;简略详细介绍:go-mirv2是参照grpc应用方法,应用golang内嵌的建筑结构标识定义路由器信息,根据代码转化成的方法转化成接口代码,领域模型只需完成了接口,申请注册接口完成的目标到相对的web模块,运行后就可以对外开放根据RESTful接口获得服务项目。大概架构以下:作用特点:应用Go建筑结构标识定义handler路由器信息;全自动依据定义的建筑结构标识信息转化成handler接口,开发人员完成相对接口后申请注册到router,与gRPC的应用方法相近;内嵌支持gin、go-chi、mux、httprouter、echo、iris、macaron的代码制作器;内置钢管脚手架mirc自动生成gin、go-chi、mux、httprouter、echo、iris、macaron款式的建筑工程模板代码;支持多goroutine并产生成接口代码,加速代码转化成高效率;代码实例:eg:ginstyle转化成样版代码%gogetgithub.com/alimy/mir/mirc/v2latest%mircnew-dmir-examples%treemir-examplesmir-examples├──Makefile├──README.md├──go.mod├──main.go└──mirc├──main.go└──routes├──site.go├──v1│└──site.go└──v2└──site.go�mir-examples%makegenerate自定义路由器信息,例如://file:mirc/routes/v1/site.gopackagev1import"github.com/alimy/mir/v2""github.com/alimy/mir/v2/engine"funcinit{engine.AddEntrynewSite}//Sitemir'sstructtagdefinetypeSitestruct{Chainmir.Chain`mir:"-"`Groupmir.Group`mir:"v1"`Indexmir.Get`mir:"/index/"`Articlesmir.Get`mir:"/articles/:category/"`}定义制作器通道,例如://file:mirc/main.gopackagemainimport"log""github.com/alimy/mir/v2/core""github.com/alimy/mir/v2/engine"_"github.com/alimy/mir/v2/examples/mirc/routes"_"github.com/alimy/mir/v2/examples/mirc/routes/v1"_"github.com/alimy/mir/v2/examples/mirc/routes/v2"//go:generategorunmain.gofuncmain{log.Println"generatecodestart"opts:=core.Options{core.RunModecore.InSerialDebugMode,core.GeneratorNamecore.GeneratorGin,core.SinkPath"./gen",}iferr:=engine.Generateopts;err!=nil{log.Fatalerr}log.Println"generatecodefinish"}自动生成接口,根据上边的定义,制作器将自动生成接口定义文档,以下:%makegenerate�tmirc/gen/api/v1/site.go//Codegeneratedbygo-"github.com/gin-gonic/gin"typeSiteinterface{//ChainprovidehandlerschainforginChaingin.HandlersChainIndex*gin.ContextArticles*gin.Context}//RegisterSiteServantregisterSiteservanttoginfuncRegisterSiteServante*gin.Engine,sSite{router:=e.Group"v1"//usechainforroutermiddlewares:=s.Chainrouter.Usemiddlewares...//registerroutesinfotorouterrouter.Handle"GET","/index/",s.Indexrouter.Handle"GET","/articles/:category/",s.Articles}完成接口逻辑性,例如://file:servants/site_v1.gopackageservantsimport"net/http""github.com/gin-gonic/gin"api"github.com/alimy/mir/v2/examples/mirc/gen/api/v1"var_api.Site=EmptySiteV1{}//EmptySiteV1implementapi.SiteinterfacetypeEmptySiteV1struct{}funcEmptySiteV1Chaingin.HandlersChain{returngin.HandlersChain{gin.Logger}}funcEmptySiteV1Indexc*gin.Context{c.Stringhttp.StatusOK,"getindexdatav1"}funcEmptySiteV1Articlesc*gin.Context{c.Stringhttp.StatusOK,"getarticlesdatav1"}申请注册接口完成目标到相对性应的router,例如:packagemainimport"log""github.com/gin-gonic/gin""github.com/alimy/mir/v2/examples/mirc/gen/api""github.com/alimy/mir/v2/examples/mirc/gen/api/v1""github.com/alimy/mir/v2/examples/mirc/gen/api/v2""github.com/alimy/mir/v2/examples/servants"funcmain{e:=gin.New//registerservantstoengineregisterServantse//startservantserviceiferr:=e.Run;err!=nil{log.Fatalerr}}funcregisterServantse*gin.Engine{//registerdefaultgrouproutesapi.RegisterSiteServante,servants.EmptySiteWithNoGroup{}//registerroutesforgroupv1V1.RegisterSiteServante,servants.EmptySiteV1{}//registerroutesforgroupv2v2.RegisterSiteServante,servants.EmptySiteV2{}}最终,搭建并运作运用:%makerun做好了,是否非常简单,赶快入门吧:演试新项目:examples:一个简易的迅速掌握怎么使用mir的演试新项目;mir-covid19:新冠肺炎疫情统计分析TH_COVID19_International的Golang版本号,详细的演试了怎么使用mir快速开发一个web应用。


本文关键词:信息,足球竞猜,代码,转化成

本文来源:足球竞猜-www.knzzy.com