Ошибки Swagger показывают необходимость определения параметра на пути или уровне операции - PullRequest
0 голосов
/ 10 июля 2019

Я получаю ошибку ниже:

Объявленный параметр пути "imageId" должен быть определен как путь параметр на пути или на рабочем уровне

Это снимок моего определения чванства

 '/api/v1/images/{unitnumber}/{type}/{imageId}':
        delete:
          tags:
            - Images
          summary: 'Summary'
          description: "Description"
          operationId: DeleteImage
          consumes: []
          produces:
            - application/json
          parameters:
            - name: unitnumber
              in: path
              required: true
              type: string
            - name: type
              in: path
              required: true
              type: string
            - name: imageId
              in: query
              required: false
              type: string
          responses:
            '400':
              description: Bad Request
              schema:
                $ref: '#/definitions/ErrorResponse'
            '401':
              description: Unauthorized
              schema:
                type: string
            '500':
              description: Server Error
              schema:
                $ref: '#/definitions/ErrorResponse'

Я могу избавиться от ошибки, только если я беру imageId и меняю на path вместо query, что не является намерением

           - name: imageId
                  in: path
                  required: true
                  type: string

Есть идеи, что мне нужно изменить, чтобы это работало?

1 Ответ

1 голос
/ 10 июля 2019

Строка пути /api/v1/images/{unitnumber}/{type}/{imageId} означает, что imageId является параметром пути, поэтому он должен быть in: path.

Если imageId должен быть параметром запроса, как в /api/v1/images/{unitnumber}/{type}?imageId=..., вам нужно изменить строку пути на /api/v1/images/{unitnumber}/{type}. Параметры запросов не должны упоминаться в путях , они определены только в разделе parameters.

...