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

news/2024/10/21 13:35:52

《用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)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/72477.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

2024-10-16

选择器: 全局 元素 类 ID 合并示例点击查看代码 <!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title&…

利用LangGraph和Waii实现你的chat2db!

0 前言 在数据分析领域快速发展的今天,通过自然语言与数据交互的能力变得越来越有价值。对话式分析旨在使复杂数据结构对没有专业技能的用户更易于访问。 LangGraph 是个框架,用于构建使用语言模型的状态化、多代理应用程序。Waii 提供文本到 SQL 和文本到图表的功能,使用户…

MC官启使用软链接改变文件位置

MC官启使用软链接改变文件位置 某些软件由于各种各样的原因会强制将文件安装到c盘,而c盘作为系统盘过多的文件会导致储存空间变小,但是过小的存储空间会导致系统运行缓慢甚至崩溃,所以是否有办法使得强制安装到c盘的文件能够挪到别的位置?显然是有解决方法的,接下来我为大…

34岁IT男的职场十字路口:是失业预警,还是转型契机?

在信息技术这片充满机遇与挑战的广袤领域,34岁,一个看似正值壮年却暗藏危机的年龄,成为了许多IT男性不得不面对的职场考验。当“34岁现象”逐渐凸显,我们不禁要问:在这个快速变化的时代,34岁的IT男,真的已经站在了失业的边缘吗? 一、34岁IT男的职场困境与反思 在IT这片…

【软考】7 程序设计语言

一、编译程序和解释程序 编译器和解释器都会3个分析处理 以下关于高级程序设计语言实现的编译和解释方式的叙述中,正确的是( A )。A编译程序不参与用户程序的运行控制,而解释程序则参与B编译程序可以用高级语言编写,而解释程序只能用汇编语言编写C编译方式处理源程序时不进…

「Day-2 提高笔记-字典树」

字典树 字典树是什么?理论知识插入操作我们在插入的时候,先从根节点去向下遍历。对于字符串 \(S\) 的一位 \(S_i\)。如果发现其在字典树中当前节点下有这个字符 \(S_i\),则继续向下,在向下的过程中每次给当前节点的次数加 \(1\),记录字符串前缀数量。 若无这个字符,则开辟…

【软件工程】团队作业1

这个作业属于哪个课程 广工计院计科34班软工这个作业要求在哪里 作业要求这个作业的目标 创立团队,分工合作,团队展示,熟悉软件开发整体流程,提升自身能力一、团队展示队名:小飞棍队团队项目简介:工大严选(基于 Vue3 构建的购物平台,界面简洁直观,分类明确,技术高效,…