Как исправить исключение в self._validate_spec (raw_spec)? - PullRequest
0 голосов
/ 26 марта 2019

Я пытаюсь сгенерировать код Flask, используя Connexion, из файла .yaml, содержащего спецификации OpenAPI 3.0.0.

Когда я выполняю это:

Я получаю

import connexion

app = connexion.App(__name__, specification_dir='swagger/')
app.add_api('Contato.yaml')
app.run(port=8080)

и я получаю это исключение:

connexion.exceptions.InvalidSpecification: {'content': {'application/json': {'schema': {'$ref': '#/components/schemas/Contato', 'x-scope': ['']}}}} is not valid under any of the given schemas

Failed validating 'oneOf' in schema['properties']['paths']['patternProperties']['^/']['properties']['get']['properties']['responses']['patternProperties']['^([0-9X]{3})$']:
    {'oneOf': [{'$ref': '#/definitions/response'},
               {'$ref': '#/definitions/reference'}]}

On instance['paths']['/{idContato}']['get']['responses']['200']:
    {'content': {'application/json': {'schema': {'$ref': '#/components/schemas/Contato',
                                                 'x-scope': ['']}}}}

Файл .yaml не включает в себя «x-scope».Откуда это определение?Как я могу преодолеть это исключение?

1 Ответ

0 голосов
/ 05 апреля 2019

Я не смог воспроизвести ошибку, мне нужно больше информации, но я считаю, что эта ошибка была исправлена ​​в:

https://github.com/Yelp/swagger_spec_validator/issues/50

Добавить в файл требований:

swagger-spec-validator == 2.4.0

Я верю, что это решит

...