我想结合使用OpenAPI 3规范编写的API规范,该规范目前分为使用$ref
相互引用的多个文件。我该怎么办?
答案 0 :(得分:1)
执行此操作的一种方法是使用开源项目speccy。
打开终端并通过运行安装speccy
(要求Node.js):
npm install speccy -g
然后运行:
speccy resolve path/to/spec.yaml -o spec-output.yaml
答案 1 :(得分:0)
Swagger Codegen可以解析外部$ ref并创建一个文件:
java -jar swagger-codegen-cli-3.0.4.jar generate -i ./path/to/openapi.yaml -l openapi -o ./RESOLVED
答案 2 :(得分:0)
我最近写了一个快速工具来做到这一点。我称之为openapi-merge。有一个库和一个关联的CLI工具:
要使用CLI工具,您只需编写一个配置文件,然后运行npx openapi-merge-cli
。配置文件非常简单,看起来像这样:
{
"inputs": [
{
"inputFile": "./gateway.swagger.json"
},
{
"inputFile": "./jira.swagger.json",
"pathModification": {
"stripStart": "/rest",
"prepend": "/jira"
}
},
{
"inputFile": "./confluence.swagger.json",
"disputePrefix": "Confluence",
"pathModification": {
"prepend": "/confluence"
}
}
],
"output": "./output.swagger.json"
}
有关更多详细信息,请参见README on the NPM package。