我在我的机器中本地使用Swagger编辑器。
当我启动Swagger编辑器时,默认情况下会在启动时显示petstore的规范。
我想删除它并显示一个空白的编辑器。有没有办法在启动时这样做。
答案 0 :(得分:1)
使用以下js代码在swagger编辑器中删除默认内容。
editor = SwaggerEditorBundle({
dom_id: "#swagger-editor",
layout: "StandaloneLayout",
presets: [SwaggerEditorStandalonePreset]
});
window.editor = editor;
// The line to remove the content in swagger editor
editor.specActions.updateSpec(' ');
答案 1 :(得分:0)
一个简单的解决方法是使用?url=
参数运行编辑器,其中URL指向空页面(无HTTP响应正文),例如http://httpbin.org/status/200。
http://editor.swagger.io/?url=http://httpbin.org/status/200
这将打开一个空白的编辑器。
或者,您可以修改编辑器的源代码并构建自己的版本。您将需要Node.js 6.x和npm 3.x(截至撰写本文时)。
默认编辑器内容似乎在这里设置: https://github.com/swagger-api/swagger-editor/blob/master/src/plugins/local-storage/index.js#L29
在src\plugins\local-storage\index.js
中,替换
import PetstoreYaml from "./petstore"
与
const PetstoreYaml = ""
重建编辑器:
npm run build
答案 2 :(得分:0)
将{strong> url 属性插入swagger-editor's index.html之类的swagger-ui's it中。
Open custom yaml spec in swagger editor on startup · Issue #1727 · swagger-api/swagger-editor
您可以使用Swagger-UI的配置选项来加载自己的定义:有用于获取远程文档的url和用于直接传递JavaScript对象的规范。 Swagger-Editor将这些选项直接传递到其基础的Swagger-UI实例。
答案 3 :(得分:0)
如果您使用的是docker image(docker pull swaggerapi / swagger-editor)在本地运行swagger编辑器,则提供您自己的本地json或yaml文件,如下所示:
$ ls
teapi-openapi.yaml
$sudo docker run -d -p 9800:8080 -v $(pwd):/tmp -e SWAGGER_FILE=/tmp/teapi-openapi.yaml swaggerapi/swagger-editor
要访问:
http://<IP>:9800/
其中ip是运行swagger编辑器映像的计算机IP,将9800替换为要访问的任何端口
答案 4 :(得分:0)
从下一个版本v1.4.1开始,将添加以下属性以禁用swagger-ui默认的petstore网址:
springdoc.swagger-ui.disable-swagger-default-url=true
复制自 https://github.com/springdoc/springdoc-openapi/issues/714#issuecomment-640215759