go-swagger-api应用

该项目包含Swagger 2.0的golang实现 (又名OpenAPI 2.0)。 它提供了与swagger规范一起工作的工具。
swagger 是RESTful API的简单而强大的实现。
github:https://github.com/go-swagger/go-swagger
文档:https://goswagger.io/go-swagger/
聊聊Swagger
拥有全球最大的API工具生态系统,几乎所有现代编程语言和部署环境中都支持Swagger。
使用支持Swagger的API,您可以获得交互式文档、生成客户端SDK和发现服务。
Swagger帮助Apigee,Getty Images,Intuit,LivingSocial,McKesson,Microsoft,Morningstar和PayPal等公司使用RESTful api构建最佳服务。现在在2.0版本中,Swagger比以往任何时候都更加易用。它是完全开源的软件。
特点
go-swagger为go社区带来了一整套功能齐全、高性能的API组件,可与Swagger API配合使用: 开发服务端、客户端和数据模型。
- 按照swagger规范生成服务端代码
- 按照swagger规范生成客户端代码
- 按照swagger规范 (alpha阶段) 生成CLI (命令行工具)
- 支持jsonschema和swagger提供的大多数功能,包括多态
- 从带注释的go代码生成swagger规范
- 使用swagger规范的其他工具
- 出色的自定义功能,具有自带的扩展和可自定义的模板
我们对代码生成的理念是:生成惯用的,快速的go代码,它与golint,go vet等兼容得很好。
安装
从源安装
按章支持命令,docker,源安装,这里只记录下我用源码安装的操作。
1 | > go version |
swagger工具说明:
1 | Usage: |
具体怎么用可以参考官网。
生成服务端
参考:https://goswagger.io/go-swagger/generate/server/
1 | # 生成描述文件 |
如图,我新建了一个项目,按照这个目录来构建应用
把swagger.exe放到项目里,编写好swagger.yaml 执行swagger生成代码
1 | .\pkg\restapi\swagger\swagger.exe generate server -m ../models -f .\pkg\restapi\swagger\swagger.yaml -t .\pkg\restapi |
新建启动文件,启动:
1 | D:\goworkspace\mlss-cc-service> cd .\cmd\mlss-cc-go\ |
- 本文标题:go-swagger-api应用
- 本文作者:形而上
- 创建时间:2024-05-17 14:23:45
- 本文链接:https://deepter.gitee.io/2024_05_17_go_swagger/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!