使用dredd yml

时间:2017-11-08 15:45:51

标签: node.js rest yaml dredd

对我的API使用node dredd。 我选择使用yml文件,因为这是一个熟悉我的团队的标准。

以下是我们正常运行的示例代码段:

  /api/station/{id}:
    get:
      produces:
        - application/json; charset=utf-8
      parameters:
      - name: id
        in: path
        required: true
        type: string
        description: DynamoDB ID of the station to edit
        x-example: 'daf04a00-c3bf-11e7-a913-b76623d265c4'
      responses:
        200:
          description: Returns a single station
          schema:
            $ref: '#/definitions/station'

我想我可以猜测如何定义备用响应对象,我假设只是添加到对象,例如:

  responses:
    200:
      description: Returns a single station
      schema:
        $ref: '#/definitions/station'
    422:
      description: Failed validation

在dredd文档中:https://dredd.readthedocs.io/en/latest/how-to-guides.html#multiple-requests-and-responses-within-one-api-blueprint-action

有一个示例如何将多个请求发送到同一个端点..但这是针对API蓝图格式而不是yaml。

有谁知道如何使用yaml格式将多个请求传递到同一个端点?我看不到任何关于如何做的文档

1 个答案:

答案 0 :(得分:0)

在您关联的文档部分正下方Testing non-2xx Responses with Swagger

  

Swagger格式允许为单个操作指定多个响应。   默认情况下,Dredd仅测试具有2xx状态代码的响应。与其他人的回应   代码标记为跳过并且可以在挂钩中激活 - 请参阅使用Swagger测试非2xx响应。

     Dredd忽略了

Default responses。此外,截至目前,   producesconsumes仅支持application/json媒体类型。   其他媒体类型被跳过。