写点什么

《使用 Gin 框架构建分布式应用》阅读笔记:p52-p76

作者:codists
  • 2024-10-16
    广东
  • 本文字数:786 字

    阅读完需:约 3 分钟

《用 Gin 框架构建分布式应用》学习第 4 天,p32-p76 总结,总计 25 页。

一、技术总结

1.Go 知识点

(1)iouti

书上使用 ioutil 包读取 JSON 文件,但是从 go 1.16 开始,不再推荐使用 ioutil,应该使用 os 包。

(2)json.Unmarshal() vs json.NewDecoder()

当数据已经被加载到内存中了(例如一个 string,slice),那么使用 json.Unmarshal();如果是读取文件,那么使用 json.NewDecoder。

2.go-swagger

使用 go-swagger 包生成 API 文档流程:


(1)安装


go install github.com/go-swagger/go-swagger/cmd/swagger@latest
复制代码


(2)给函数添加 swagger


/ swagger:route GET /recipes  listRecipes// Returns list of recipes// ---// produces:// - application/json// responses:// '200':// description: Successful operation// ListRecipesHandler 差下recipes,因为是查询所有,所以名称这里用的是复数func ListRecipesHandler(c *gin.Context) {  c.JSON(http.StatusOK, recipes)}
复制代码


(3)生成文档


swagger generate spec -o ./swagger.json
复制代码


注:每次给函数添加注释后都需要执行该命令,否则 API 文档不会更新。


(4)启动 API 服务


 swagger serve --no-open -F swager ./swagger.json
复制代码


注:因为本人使用的是 WSL,所以需要添加--no-open,否则报 webbrowser: can't open browser 错误,服务无法启动。


UI 有两种风格:Redoc 和 Swagger UI。上没“-F swagger”指定了 UI 风格为 Swagger UI。


注:个人觉得书上这种方式比较麻烦且繁琐,同时大量的注释导致代码非常不简洁。

二、英语总结

无,第二章除了食物名,整体来说生词比较少。

三、其它

无。

四、参考资料

1. 编程

(1) Mohamed Labouardy,《Building Distributed Applications in Gin》:https://book.douban.com/subject/35610349

2. 英语

(1) Etymology Dictionary:https://www.etymonline.com


(2) Cambridge Dictionary:https://dictionary.cambridge.org


欢迎搜索及关注:编程人(a_codists)

用户头像

codists

关注

公众号:编程人 2021-01-14 加入

Life is short, You need Python

评论

发布
暂无评论
《使用Gin框架构建分布式应用》阅读笔记:p52-p76_golang_codists_InfoQ写作社区