Skip to content

Latest commit

 

History

History
112 lines (88 loc) · 4.89 KB

README_ZH.md

File metadata and controls

112 lines (88 loc) · 4.89 KB

Go Gin Example rcard GoDoc License

gin 的一个例子,包含许多有用特性

目录

本项目提供 Gin实践 的连载示例代码

  1. Gin实践 连载一 Golang介绍与环境安装
  2. Gin实践 连载二 搭建Blog API's(一)
  3. Gin实践 连载三 搭建Blog API's(二)
  4. Gin实践 连载四 搭建Blog API's(三)
  5. Gin实践 连载五 使用JWT进行身份校验
  6. Gin实践 连载六 编写一个简单的文件日志
  7. Gin实践 连载七 Golang优雅重启HTTP服务
  8. Gin实践 连载八 为它加上Swagger
  9. Gin实践 连载九 将Golang应用部署到Docker
  10. Gin实践 连载十 定制 GORM Callbacks
  11. Gin实践 连载十一 Cron定时任务
  12. Gin实践 连载十二 优化配置结构及实现图片上传
  13. Gin实践 连载十三 优化你的应用结构和实现Redis缓存
  14. Gin实践 连载十四 实现导出、导入 Excel
  15. Gin实践 连载十五 生成二维码、合并海报
  16. Gin实践 连载十六 在图片上绘制文字
  17. Gin实践 连载十七 用 Nginx 部署 Go 应用
  18. Gin实践 番外 Golang交叉编译
  19. Gin实践 番外 请入门 Makefile

安装

$ go get github.com/EDDYCJY/go-gin-example

如何运行

必须

  • Mysql
  • Redis

准备

创建一个 blog 数据库,并且导入建表的 SQL

配置

你应该修改 conf/app.ini 配置文件

[database]
Type = mysql
User = root
Password = rootroot
Host = 127.0.0.1:3306
Name = blog
TablePrefix = blog_

[redis]
Host = 127.0.0.1:6379
Password =
MaxIdle = 30
MaxActive = 30
IdleTimeout = 200
...

运行

$ cd $GOPATH/src/go-gin-example

$ go run main.go 

项目的运行信息和已存在的 API's

[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
 - using env:	export GIN_MODE=release
 - using code:	gin.SetMode(gin.ReleaseMode)

[GIN-debug] GET    /auth                     --> github.com/EDDYCJY/go-gin-example/routers/api.GetAuth (3 handlers)
[GIN-debug] GET    /swagger/*any             --> github.com/EDDYCJY/go-gin-example/vendor/github.com/swaggo/gin-swagger.WrapHandler.func1 (3 handlers)
[GIN-debug] GET    /api/v1/tags              --> github.com/EDDYCJY/go-gin-example/routers/api/v1.GetTags (4 handlers)
[GIN-debug] POST   /api/v1/tags              --> github.com/EDDYCJY/go-gin-example/routers/api/v1.AddTag (4 handlers)
[GIN-debug] PUT    /api/v1/tags/:id          --> github.com/EDDYCJY/go-gin-example/routers/api/v1.EditTag (4 handlers)
[GIN-debug] DELETE /api/v1/tags/:id          --> github.com/EDDYCJY/go-gin-example/routers/api/v1.DeleteTag (4 handlers)
[GIN-debug] GET    /api/v1/articles          --> github.com/EDDYCJY/go-gin-example/routers/api/v1.GetArticles (4 handlers)
[GIN-debug] GET    /api/v1/articles/:id      --> github.com/EDDYCJY/go-gin-example/routers/api/v1.GetArticle (4 handlers)
[GIN-debug] POST   /api/v1/articles          --> github.com/EDDYCJY/go-gin-example/routers/api/v1.AddArticle (4 handlers)
[GIN-debug] PUT    /api/v1/articles/:id      --> github.com/EDDYCJY/go-gin-example/routers/api/v1.EditArticle (4 handlers)
[GIN-debug] DELETE /api/v1/articles/:id      --> github.com/EDDYCJY/go-gin-example/routers/api/v1.DeleteArticle (4 handlers)

Listening port is 8000
Actual pid is 4393

Swagger 文档

image

特性

  • RESTful API
  • Gorm
  • Swagger
  • logging
  • Jwt-go
  • Gin
  • Graceful restart or stop (fvbock/endless)
  • App configurable
  • Cron
  • Redis