基于 Swagger/OpenAPI 规范自动生成生产级 SDK 的工具, 目前支持以下语言:
go install cnb.cool/cnb/sdk/cnb-sdk-generator
从本地文件生成 cnb-sdk-generator -i swagger.json -o ./sdk 从远程URL生成 cnb-sdk-generator -i https://api.example.com/swagger.json -o ./generated 使用自定义配置 cnb-sdk-generator -i swagger.json -o ./sdk -e config.yaml
如果有些 api 的原始定义有些问题,你修改它的默认行为,那么进行如下自定配置 config.yaml
paths:
/api/v1/users/{id}:
GET:
ignore: true # 忽略这个 API
form_to_body: true # 强制将 formData 定义的参数转换为 body 类型的调用方式,默认为 false, 比如 gitee 的 swagger 文件明明定义的是 formdata,实际调用却要使用 body 😅 😅 😅 😅
models:
dto.Repos4User:
type_overrides:
visibility_level: "string" # 重写 dto.Repos4User.visibility_level 的类型为 string
本项目采用 MIT 许可证