web-dev-qa-db-fra.com

L'éditeur Swagger affiche l'erreur "Erreur de schéma: ne devrait PAS avoir de propriétés supplémentaires" pour un paramètre de chemin

J'utilise http://editor.swagger.io pour concevoir une API et j'obtiens une erreur que je ne sais pas comment résoudre:

Schema error at paths['/employees/{employeeId}/roles'].get.parameters[0]
should NOT have additional properties
additionalProperty: type, format, name, in, description
Jump to line 24

J'ai d'autres points de terminaison définis d'une manière similaire, et je ne reçois pas cette erreur. Je me demandais si j'avais un problème avec l'indentation ou les citations non fermées, mais cela ne semble pas être le cas. Google n'a pas non plus semblé fournir de résultats utiles.

swagger: "2.0"
info:
  description: Initial draft of the API specification
  version: '1.0'
  title: App 4.0 API
Host: api.com
basePath: /v1
tags:
  - name: employees
    description: Employee management
schemes:
  - https
paths:
  /employees/{employeeId}/roles:
    get:
      tags:
        - employees
      summary: "Get a specific employee's roles"
      description: ''
      operationId: findEmployeeRoles
      produces:
        - application/json
      parameters:
        - name: employeeId   <====== Line 24
          in: path
          description: Id of employee whose roles we are fetching
          type: integer
          format: int64
      responses:
        '200':
          description: successful operation
          schema:
            type: array
            items:
              $ref: '#/definitions/Role'
        '403':
          description: No permission to see employee roles
        '404':
          description: EmployeeId not found

Des indices?

18
Emanuel Ey

Le message d'erreur est trompeur. L'erreur réelle est que votre paramètre de chemin est manquant required: true. Les paramètres de chemin sont toujours nécessaires, donc n'oubliez pas de leur ajouter required: true.

23
Helen

La syntaxe nécessite peut nécessiter deux paramètres, comme le mentionne Helen required: true si besoin est, de même que type:DataType. L'erreur est trompeuse.

0
Akhil Sharma