具有招摇的对象的模式

时间:2018-03-09 09:04:35

标签: node.js object schema yaml swagger

我正在为两条获取路线编写一个模式,其结果是像

这样的对象
{
  "id":"49077acb6ac8",
  "info":
    {
      "name":"test"
    }
}

其实我得到了这个:

/*
* @swagger
*  definitions:
*    getVCenter:
*      id:
*        type: string
*        format: uuid
*      info:
*        type: object
*      properties:
*        name:
*          type: string
*        fullName:
*          type: string
*        vendor:
*          type: string
* /v1/vcenters/:
*   get:
*     tags:
*       - vcenters
*     summary: Get availables vCenters.
*     description: Get a list of availables vCenters.
*     produces:
*       - application/json
*     responses:
*       200:
*         description: an array of vCenters
*         schema:
*           $ref : '#definitions/getVCenter'
*/

但它不再起作用了。

有人可以向我解释我的错误吗?

1 个答案:

答案 0 :(得分:0)

注释中存在语法错误。

info属性的缩进应如下所示:

*      info:
*        type: object
*        properties:  # <-- "properties" must be on the same level as "type: object"
*          name:
*            type: string
*          fullName:
*            type: string
*          vendor:
*            type: string

$ref中,/之后必须有# - 将#definitions替换为#/definitions

$ref : '#/definitions/getVCenter'

此外,如果响应应该是&#34;一系列vCenters&#34;而不是单个vCenter,则响应模式应为:

*     responses:
*       200:
*         description: an array of vCenters
*         schema:
*           type: array
*           items:
*             $ref : '#/definitions/getVCenter'