首页 > 解决方案 > 在 req.swagger.params 中无法访问 Open API 3.0 RequestBody,因为它在节点 API 中未定义

问题描述

当我尝试访问 requestBody 时,它给了我错误无法访问未定义。
然后我通过打印req.swagger.params进行检查,它看起来像这样:

  { _id: 
     { path: '/v0/users/config/{_id}',
       schema: [Object],
       originalValue: '123',
       value: '123' },
    undefined: 
     { path: '/v0/users/config/{_id}',
       schema: [Object],
       originalValue: [Object],
       value: [Object] } }

无法理解 requestBody 出现未定义键名的原因。

我现在如何访问 requestBody?

标签: node.jsopenapiswagger-3.0

解决方案


我找到了为面临相同问题的其他人发布解决方案的解决方案。它的文档中没有提到它。

requestBody:
  x-name: body 
  content:
    application/json:
      schema:
        required:
        - name
        properties:
          name:
            type: array
            items:
              type: string
            description: Updated name of the pet
          status:
            type: string
            description: Updated status of the pet

我们必须在x-name中提及 requestBody的名称


推荐阅读