confluence地址 (opens new window)

全量同步所有已配置模块:

node modifyJsonFile.js
1

也可以通过 npm script 执行:

npm run docs:sync
1

开发和构建共用同一套数据准备流程:全量同步、生成公开 JSON并执行安全检查。

npm run docs:prepare
1

启动开发环境时会先自动执行数据准备:

npm run docs:dev
1

执行文档构建时也会先自动执行数据准备:

npm run docs:build
1

同步脚本不需要指定模块或接口。它会并行拉取全部已配置 Swagger,全部请求和数据结构校验通过后,完整覆盖 swagger-source/JSON 中对应的原始 JSON。任一模块失败时构建会直接失败,不会继续发布旧数据。 tip:

docs:sync 只负责更新原始 Swagger;docs:sanitize 是生成 public JSON 的唯一入口,它会处理 swagger-source/JSON 中的全部模块,并只保留公开接口及其可达 definitions。原始 Swagger 不会被 VuePress 发布。

修改文档数据后可运行 npm run docs:check-security,确认公开 JSON 不包含非 OpenAPI 接口、未引用模型或后端 host 信息。

目前因为文档地址不全,其他模块请先通知开发者,或在urlMap中添加对应的地址,其中key:文件名,value: swagger-doce地址

Swagger 数据源统一维护在 modifyJsonFile.jsswaggerSources 中。未配置远端 Swagger 地址的历史 JSON 文件仍按仓库现有内容发布,不会被全量同步脚本修改。

img.png