有用于更新文件定义的API吗?我正在寻找一种方法来自动保持Git和SwaggerHub中的项目同步,因此我想在每次合并时更新文件定义。可能吗?如何管理使项目和SwaggerHub定义自动保持同步?
是的,SwaggerHub有一个API:
https://api.swaggerhub.com
与SwaggerHub API集成
您可以像这样在SwaggerHub中更新您的API定义:
POST https://api.swaggerhub.com/apis/OWNER/API_NAME
Authorization: YOUR_API_KEY
Content-Type: application/yaml
# Request body is your complete YAML/JSON file
swagger: '2.0'
info:
title: My API
version: 1.0.0
paths:
...
Run Code Online (Sandbox Code Playgroud)
Content-Type: application/yaml如果上载YAML和上Content-Type: application/json载JSON ,则使用。
笔记:
如果您的API定义采用OpenAPI 3.0格式(openapi: 3.0.x),请将?openapi=3.0.0参数添加到请求URL:
POST https://api.swaggerhub.com/apis/OWNER/API_NAME?openapi=3.0.0
Run Code Online (Sandbox Code Playgroud)使用cURL上传YAML文件时,请使用--data-binary参数(而非-d/ --data)指定文件路径:
curl -X POST "https://api.swaggerhub.com/apis/OWNER/API_NAME" \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/yaml" \
--data-binary @myapi.yaml
Run Code Online (Sandbox Code Playgroud)还有Maven和Gradle插件,用于从SwaggerHub下载API定义/将其上传到SwaggerHub。
| 归档时间: |
|
| 查看次数: |
279 次 |
| 最近记录: |