Swagger Edtior Post 请求示例:无法渲染 n,请参阅控制台

Des*_*ley 6 swagger swagger-editor openapi

我在 openapi 中呈现示例请求正文时遇到问题。我已经把它提炼成这个简单的例子:

openapi: 3.0.2
info:
  title: Test
  version: "1"
paths:
  /Users:
    post:
      requestBody:
        content:
          application/json:
            example: 
              name: "John"
              
      responses:
        "200":
          description: Fetches them
          content:
            application/json:
              example:
                - name: John Doe
                
Run Code Online (Sandbox Code Playgroud)

https://editor.swagger.io/#和其他一些工具似乎无法呈现请求正文。我得到的是:

Could not render n, see the console.

虽然,响应正文按预期呈现得很好。

我在这里做错了什么

tur*_*hal 2

确切地说,我不确定为什么你只想添加没有模式的示例,是的,我们可以说它是 swagger-ui 中的一种错误,

在 swagger 编辑器中查看控制台错误,

swagger-editor-bundle.js:sourcemap:33 TypeError: Cannot read property 'toJS' of undefined
    at c (swagger-editor-bundle.js:sourcemap:33)
    at t.default (swagger-editor-bundle.js:sourcemap:33)
    at n.value (swagger-editor-bundle.js:sourcemap:33)
    at n.R.t.render (swagger-editor-bundle.js:sourcemap:33)
    at u._renderValidatedComponentWithoutOwnerOrContext (swagger-editor-bundle.js:sourcemap:100)
    at u._renderValidatedComponent (swagger-editor-bundle.js:sourcemap:100)
    at u.performInitialMount (swagger-editor-bundle.js:sourcemap:100)
    at u.mountComponent (swagger-editor-bundle.js:sourcemap:100)
    at Object.mountComponent (swagger-editor-bundle.js:sourcemap:13)
    at u.performInitialMount (swagger-editor-bundle.js:sourcemap:100)
Run Code Online (Sandbox Code Playgroud)

当在 中指定模式类型时,这很奇怪requestBody,它将帮助您进行临时修复,如下所示,

swagger-editor-bundle.js:sourcemap:33 TypeError: Cannot read property 'toJS' of undefined
    at c (swagger-editor-bundle.js:sourcemap:33)
    at t.default (swagger-editor-bundle.js:sourcemap:33)
    at n.value (swagger-editor-bundle.js:sourcemap:33)
    at n.R.t.render (swagger-editor-bundle.js:sourcemap:33)
    at u._renderValidatedComponentWithoutOwnerOrContext (swagger-editor-bundle.js:sourcemap:100)
    at u._renderValidatedComponent (swagger-editor-bundle.js:sourcemap:100)
    at u.performInitialMount (swagger-editor-bundle.js:sourcemap:100)
    at u.mountComponent (swagger-editor-bundle.js:sourcemap:100)
    at Object.mountComponent (swagger-editor-bundle.js:sourcemap:13)
    at u.performInitialMount (swagger-editor-bundle.js:sourcemap:100)
Run Code Online (Sandbox Code Playgroud)

了解更多详细信息媒体类型规范

  • 谢谢,这让我越界了,虽然我不明白为什么需要模式来显示示例,但我认为它是一个错误 (2认同)