如何导出Swagger定义文件(JSON/YAML格式)
如何导出Swagger定义文件(无Export按钮时)
别担心,这种情况挺常见的——不少Swagger UI实例会因为版本或者配置原因不显示Export按钮,但我们有几种靠谱的方法能拿到你需要的定义文件:
方法一:直接访问Swagger定义文件的默认路径
Swagger UI本身是靠加载原始的JSON/YAML文件来渲染界面的,你可以结合API版本v1试试这些常见路径:
- 先试
http://example.com/swagger/v1/swagger.json - 或者
http://example.com/swagger/v1/swagger.yaml - 如果是ASP.NET Core这类框架,路径可能是
http://example.com/v1/swagger.json - 也可以尝试不带版本的基础路径:
http://example.com/swagger.json
注意你提供的端点里有双斜杠//swagger,大概率是输入失误,访问时改成单斜杠/swagger会更稳妥。打开这些地址后,浏览器会直接展示JSON/YAML内容,右键选择「另存为」就能把文件保存到本地了。
方法二:用浏览器开发者工具抓取定义文件
要是上面的路径都不对,就用开发者工具来定位:
- 打开你的Swagger UI页面
http://example.com//swagger/ui/index#! - 按下
F12打开浏览器开发者工具,切换到「Network」标签页 - 刷新页面,在请求列表里找名称包含
swagger、v1、json或yaml的GET请求 - 点击这个请求,切换到「Response」标签,就能看到完整的Swagger定义内容
- 全选复制这些内容,粘贴到本地文本编辑器,保存为
swagger.json或swagger.yaml就行
这两种方法基本能覆盖绝大多数没有Export按钮的场景,你可以先试第一种,不行再用第二种。
内容的提问来源于stack exchange,提问作者sashoalm
相关产品推荐
相关产品推荐

