swagger 无图式招摇过市柱体

4sup72z8  于 2022-11-06  发布在  其他
关注(0)|答案(3)|浏览(118)

我正在使用node-swagger。它工作得很好。我想发布json主体而不详细定义模式。例如下面我不想指定对象属性。有什么方法可以做到这一点吗?

/pets:
 post:
 description: Add new
 parameters:
  - name: id
   in: body
   description: data to post
   required: true
   type: object
 responses:
  '200':
    description: A list of pets
    schema:
      type : string

它没有呈现文本区域来发布json数据。

q9rjltbz

q9rjltbz1#

试试这个YAML:

---
swagger: '2.0'
info:
  version: 0.0.0
  title: Simple API
paths:
  /:
    post:
      produces:
        - application/json
      parameters:
        - in: body
          name: id
          required: true
          schema: 
            "$ref": "#/definitions/inBody"
      responses:
        201:
          description: Added
definitions:
  inBody:
    type: object
eanckbw9

eanckbw92#

如果您正在使用swagger-ui-expressswagger-jsdoc,并且不想使用定义,您可以直接在YAML中定义端点,如下所示。

/**
 * @swagger
 * /pets:
 *   post:
 *     description: Add new
 *     produces:
 *       - application/json
 *     parameters:
 *       - name: id
 *         description: data to post
 *         in: body
 *         required: true
 *         schema:
 *           type: object
 *     responses:
 *       201:
 *         description: Pet created
 */
ct3nt3jp

ct3nt3jp3#

根据Open API 3规范,对于空主体请求,您应该具有如下所示的requestBody部分:

requestBody:
     required: true
       description: blabla.
         content:
            application/json:
                schema:
                   type: object
                   nullable: true

相关问题