specification que open example swagger swagger-editor

que - swagger yaml example



Swagger Editor de múltiples parámetros en cuerpo. (2)

Entonces entiendo que si queremos parámetros de cuerpo tenemos que tener un esquema, lo cual hago. El problema es que no importa cómo intente definir mi esquema, no me permite tener varios parámetros de cuerpo. Aquí hay un ejemplo de uno de los métodos que he probado. Cualquier ayuda sería genial!

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"


No estoy seguro de entender su pregunta ...

  • Si intenta definir más de un parámetro de cuerpo para una operación, no puede. Como se explica en la especificación swagger :

Cuerpo [...] solo puede haber un parámetro cuerpo

  • Si intenta enviar un cuerpo con varios parámetros, agregue su modelo de objeto en la sección de definiciones y editor.swagger.io en su parámetro de cuerpo, vea a continuación (funciona con editor.swagger.io :

Los ejemplos de nodos también son incorrectos, consulte here para obtener más detalles.

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


También puede definir las propiedades del parámetro del cuerpo de la solicitud utilizando las properties como parte de su schema . Esto tiene un buen ejemplo en Object Payload: https://swagger.io/docs/specification/2-0/describing-request-body/ .

paths: /users: post: summary: Creates a new user. consumes: - application/json parameters: - in: body name: user description: The user to create. schema: type: object required: - userName properties: userName: type: string firstName: type: string lastName: type: string responses: 201: description: Created

La desventaja, por supuesto, es que no obtiene la reutilización de una definición de objeto, pero a veces una definición de objeto no es apropiada.