如何在Swagger UI中显示实体参数的嵌套数组示例?

如何在Swagger UI中显示实体参数的嵌套数组示例?,swagger,swagger-ui,swagger-2.0,Swagger,Swagger Ui,Swagger 2.0,我的POST方法的主体中有一个嵌套数组作为参数: parameters: - in: body name: matrix description: blabla schema: type: array items: schema: type: array items: schema: type: double 我想为这个数组添加一个在Swagger UI中

我的POST方法的主体中有一个嵌套数组作为参数:

 parameters:
 - in: body
   name: matrix
   description: blabla
   schema:
     type: array
     items:
       schema:
         type: array
         items:
           schema:
             type: double
我想为这个数组添加一个在Swagger UI中可见的示例。我尝试了以下方法,但似乎不起作用-在body字段中没有显示任何示例。如果我在Swagger UI的body字段中手动输入
[[1.0,2.0],[3.0,4.0]]
,它就可以正常工作

 parameters:
 - in: body
   name: matrix
   description: blabla
   schema:
     type: array
     items:
       schema:
         type: array
         items:
           schema:
             type: double
   example: [[1.0, 2.0],[3.0, 4.0]]
更新:在实施Helen的建议后,以下是它的外观:


以下是正确的版本:

参数:
-在:身体
名称:矩阵
描述:布拉布拉
模式:
类型:数组
项目:
类型:数组
项目:
类型:编号
格式:双
示例:[[1.0,2.0],[3.0,4.0]]
修复程序列表:

  • 无需在
    项下使用
    模式
  • type:double
    应为
    type:number
    +
    格式:double
    (请参阅)
  • 数组
    示例
    应与架构中的
    type:array
    并排。参数本身不支持
    示例
    关键字
您可以使用联机检查规范中的语法错误,它将标记有错误的行

招摇过市用户界面2.x的注意事项 如果主体是一组基本体,则Swagger UI 2.x不会显示主体参数示例。最新版本Swagger UI 3.x没有这个问题

对于2.x,一种可能的解决方法是将
x-examples.default
键添加到body参数,并将示例值指定为字符串:

参数:
-在:身体
名称:矩阵
描述:布拉布拉
模式:
类型:数组
项目:
类型:数组
项目:
类型:编号
格式:双
示例:[[1.0,2.0],[3.0,4.0]]
x-示例:

默认值:“[[1.0,2.0],[3.0,4.0]]”非常感谢您的解释性回答。现在已正确识别数据类型。但是,该示例仍然没有显示。如果在“招摇过市”编辑器中输入,它将起作用。这可能是Flasger中的一个bug吗?@Damian它在Swagger UI 2.2.10中对我来说很好。您提到Flasger-如何在Flasger中指定参数定义?Flasger到底使用了哪个版本的Swagger UI?(检查
swagger ui.js
文件顶部的注释。)
swagger ui.js
中的版本是v.2.2.10。我直接在docstring()中指定参数。您在屏幕截图中显示的不是响应变量吗?这个回答的例子对我也适用。这只是一个被窃听的参数me@Damian:谢谢,我现在明白了。顶部的示例是响应示例,但没有请求示例(body示例)。我更新了答案,加入了2.x.com的解决方案。非常感谢你