目录
一、搭建web项目
1、引入gin依赖
2、搭建项目结构
二、路由绑定
1、创建路由
解释:
2、创建实例化模块
3、创建具体事项
4、main中添加注册
一、搭建web项目
1、引入gin依赖
在项目路径下,终端中输入
go get -u github.com/gin-gonic/gin
2、搭建项目结构
最终搭建效果:
在cmd包下搭建main方法,main方法中直接复制 https://github.com/gin-gonic/gin 下以下内容
完成后即可运行访问(localhost:8080/ping) 进行访问,当然要对Run进行err预判。
修改如下
err := r.Run()if err != nil {return}
二、路由绑定
1、创建路由
在实际开发中不可能将方法实现放在main中,所以在internal包下创建新包api包,并在包下创建routers.go
const (rootPath = "/api/"
)func CmsRouter(r *gin.Engine) {root := r.Group(rootPath)//初始化cmsApp := services.NewCmsApp()//路由绑定root.GET("/hello", cmsApp.Hello)
}
解释:
定义常量路径前缀 api,创建函数CmsRouter,使用r.Group函数进行分组,分组可以定义一些方法是测试方法或需要/不需要鉴权的方法,提升代码可读性等好处
在services包下创建cms.go并在其中完成一些实例返回
在services包下创建hello.go,并在其中完成具体业务逻辑
最后在main方法中完成注册使路由生效
2、创建实例化模块
cms.go具体代码
package services//初始化type CmsApp struct {
}func NewCmsApp() *CmsApp {return &CmsApp{}
}
3、创建具体事项
hello.go具体代码
package servicesimport ("github.com/gin-gonic/gin""net/http"
)func (c *CmsApp) Hello(ctx *gin.Context) {ctx.JSON(http.StatusOK, gin.H{"message": "pong",})
}
4、main中添加注册
func main() {r := gin.Default()//注册使生效api.CmsRouter(r)err := r.Run()if err != nil {return} // listen and serve on 0.0.0.0:8080 (for windows "localhost:8080")
}
最终再次访问localhost:8080/api/hello 即可访问到接口