大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说从0开始在goland中运行GitHub go项目,希望您对编程的造诣更进一步.
从0开始在goland中运行GitHub go项目
在 Go 1.17 中,你可以使用 embed 包将静态文件嵌入到可执行文件中,因此可以将 Swagger UI 嵌入到 Go Web 项目中,而不需要单独部署 Swagger UI。
以下是在 Goland 项目中使用 Swagger 的步骤:
1. 安装 Swagger 相关依赖:在项目中添加 `github.com/swaggo/swag` 和 `github.com/swaggo/gin-swagger` 两个依赖库,可以使用以下命令:
go get -u github.com/swaggo/swaggo get -u github.com/swaggo/gin-swaggergo get -u github.com/swaggo/gin-swagger/swaggerFiles
2. 在项目中添加 Swagger 注释:在需要生成 Swagger 文档的接口上添加注释,例如:
// @Summary 获取用户信息// @Description 根据用户ID获取用户信息// @Tags 用户管理// @Produce json// @Param id path int true "用户ID"// @Success 200 {object} UserResponse// @Failure 400 {string} string "请求参数错误"// @Router /users/{id} [get]func GetUserByID(c *gin.Context) {// ...}
3. 生成 Swagger 文档:在项目根目录下执行以下命令,生成 Swagger 文档:
swag init
该命令会在项目中生成一个 `docs` 目录,其中包含了 Swagger 文档的 JSON 文件和 HTML 文件。
4. 在项目中嵌入 Swagger UI:在项目中添加一个 `swagger` 目录,并将 Swagger UI 的静态文件拷贝到该目录中。可以从 Swagger 官网(https://swagger.io/tools/swagger-ui/)下载最新的 Swagger UI 版本。
├── main.go├── go.mod├── go.sum├── docs│ ├── docs.go│ ├── swagger.json│ └── swagger.yaml└── swagger├── index.html├── swagger-ui-standalone-preset.js├── swagger-ui-standalone-preset.js.map├── swagger-ui.css├── swagger-ui.css.map├── swagger-ui.js├── swagger-ui.js.map└── swagger-ui.min.js
5. 在项目中添加 Swagger UI 的路由:在项目中添加一个路由,将 Swagger UI 的 HTML 文件和静态文件提供给用户访问,例如:
router.GET("/swagger/*any", gin.WrapH(http.FileServer(http.Dir("https://blog.csdn.net/Fourier_1024/article/details/swagger"))))
这样,用户可以通过访问 `/swagger/index.html` 来查看 Swagger 文档。
6. 启动项目并访问 Swagger UI:在 Goland 中启动项目,然后在浏览器中访问 `http://localhost:8080/swagger/index.html`,即可访问 Swagger UI 并查看文档。
需要注意的是,这种方式虽然可以将 Swagger UI 嵌入到可执行文件中,但是每次修改 Swagger UI 后都需要重新编译可执行文件,因此不建议在生产环境中使用。如果你需要在生产环境中使用 Swagger UI,建议单独部署一个 Swagger UI 服务。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://daima100.com/n-goland-jh/5211.html