Swagger UI在部署时显示错误(验证)

时间:2015-01-06 23:06:45

标签: swagger swagger-ui

我的应用程序中嵌入了swagger ui。当我在本地运行我的节点应用程序时,UI工作得很好。

然而,当我将UI部署到我的“真实”服务器时,我在我的招摇ui的右下方出现了错误图像:

enter image description here

我确信这是我正在做的事情,这是搞砸了但我不知道。当我通过http访问swagger ui时,再次在本地工作。

然而,当我部署时,我通过apache运行并通过https服务,我看到一个错误。更糟糕的是,在部署时,我的“试用”调用都没有。似乎没有提出请求。

看起来UI使用我的swagger.json调用验证器,但该调用在本地工作。

我做错了什么?

当我点击错误图标时,我得到:

enter image description here

3 个答案:

答案 0 :(得分:38)

要关闭swagger验证器,请在dist/index.html

中添加 validatorUrl:null,
  window.swaggerUi = new SwaggerUi({
    url: url,
    validatorUrl : null,
    dom_id: "swagger-ui-container",

答案 1 :(得分:16)

当这种情况发生时(有时会发生)我会去这里:

http://json-schema-validator.herokuapp.com/index.jsp

将swagger架构从此处https://github.com/swagger-api/swagger-spec/blob/master/schemas/v2.0/schema.json粘贴到架构字段中,然后粘贴数据字段中的规范

答案 2 :(得分:3)

Swagger-UI能够处理一些格式不正确的规范,这可能就是它在本地工作的原因。

默认情况下,从localhost读取规范时,验证过程不会运行。如果您愿意,您应该可以使用validatorUrl(https://github.com/swagger-api/swagger-ui#parameters)来运行它。

要查看验证错误,只需点击ERROR图标,它就会显示您的规范问题列表。