Stage1
- go mod init 项目名
- 创建 main.go
- 创建项目目录: 根据自己风格命名吧
- config 配置文件
- controller 路由
- service 服务
- models 实体/结构体
- pkg 各种包
- utils 工具类
- e 各种响应码/响应信息
- response 封装响应方法/结构体
- docs 存放 swagger 文件
- static 存放静态文件
- 安装 gin 框架依赖
- go get -u github.com/gin-gonic/gin
- 启动 go-gin Hello World
- go run main.go 访问 ip:8080 => msg:helloworld
package main
import (
"fmt"
"github.com/gin-gonic/gin"
"log"
"net/http"
)
func main() {
app := gin.New()
app.Use(gin.Logger())
app.Use(gin.Recovery())
s := &http.Server{
Addr: fmt.Sprintf(":%d", 8080),
Handler: app,
MaxHeaderBytes: 1 << 20,
}
app.GET("/", func(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{
"msg": "Hello World",
})
})
if err := s.ListenAndServe(); err != nil {
log.Fatalln("服务启动失败:", err)
}
}