Swagger Editor 正文中的多个参数 [英] Swagger Editor multiple parameters in body

查看:30
本文介绍了Swagger Editor 正文中的多个参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以我明白,如果我们想要身体参数,我们必须有一个模式,我就是这样做的.问题是无论我如何尝试定义我的架构,它都不允许我拥有多个正文参数.这是我尝试过的方法之一的示例.任何帮助都会很棒!

So I understand that if we want body parameters we have to have a schema, which I do. The issue is no matter how I try to define my schema it does not allow me to have multiple body parameters. Here is an example of one of the methods I have tried. Any help would be great!

swagger: '2.0'

# This is your document metadata
info:
  version: "0.0.1"
  title: Todo App
schema: {
        }
host: localhost:3000
schemes:
  - http
  - https
consumes:
  - application/json
produces:
  - application/x-www-form-urlencoded
basePath: /

paths:
  # This is a path endpoint. Change it.
  /tasks:
    post:
      description: |
        Add 'Task' object.

      parameters:
        # An example parameter that is in query and is required
        -
          name: name 
          in: query
          description: unique object task name
          required: true
          schema:
            type: string
        - name: description
          in: query
          description: task description
          required: true
          schema:
            type: string

      responses:
        # Response code
        200: 
          description: Successful response
          # A schema describing your response object.
          # Use JSON Schema format
          schema:
              title: Return String
              type: string
              example: "Task added succesfully"
        500:
          description: Error
          schema: 
            type: string
            example: "Could not add Task"

推荐答案

我不确定你的问题...

I'm not sure to understand your question...

Body [...] 只能有一个 body 参数

Body [...] there can only be one body parameter

  • 如果您尝试发送具有多个参数的主体,请在定义部分添加一个对象模型并在您的主体参数中引用它,见下文(适用于 editor.swagger.io):
  • 您的示例节点也是错误的,请参阅 这里了解更多详情.

    Your example nodes also are wrong, see here for more details.

    swagger: '2.0'
    info:
      version: "0.0.1"
      title: Todo App
    host: localhost:3000
    schemes:
      - http
      - https
    consumes:
      - application/json
    produces:
      - application/x-www-form-urlencoded
    basePath: /
    paths:
      # This is a path endpoint. Change it.
      /tasks:
        post:
          description: |
            Add 'Task' object.
          parameters:
            - name: task 
              in: body
              description: task object
              required: true
              schema:
                $ref: '#/definitions/Task'
          responses:
            200:
              description: Successful response
              schema:
                  title: Return String
                  type: string
                  example: "Task added succesfully"
            500:
              description: Error
              schema: 
                type: string
                example: "Could not add Task"
    definitions:
      Task:
        description: Task object
        properties:
          name:
            type: string
            description: task object name
          description:
            type: string
            description: task description
        required:
          - name
          - description
    

    这篇关于Swagger Editor 正文中的多个参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆