有没有办法在将 swagger.json 加载到 ui 中之前对其进行编辑。我的要求是在将 swagger.json 加载到 UI 之前对其进行操作,swagger 团队是否提供了任何钩子来完成此操作
问问题
1196 次
1 回答
3
您应该能够在 JSON 加载到 UI 之前对其进行操作。
/api-docs
端点是 Swagger 为提供文档而调用的。您可以在提供此端点时实现自定义功能。
例如(在 Node.JS 中):
app.get('/api-docs', function(req, res) {
// manipulate JSON here
res.json(<return manipulated JSON>);
});
您可以查看 SwaggerUIindex.js
代码以了解发生这种情况的位置。
Swagger UI - index.js
var url = window.location.search.match(/url=([^&]+)/);
if (url && url.length > 1) {
url = decodeURIComponent(url[1]);
} else {
url = "/api-docs";
}
默认网址是/api-docs
这样您就可以覆盖它。此外,您可以通过添加带有端点值的查询参数将 Swagger 文档分解为多个url
端点。
例如,您的 API 的第二组 Swagger 文档的 URL 可以是
www.mydomain.com?url=/second-set-of-docs
于 2016-03-07T16:51:52.873 回答