Проверка запроса OpenApi 3 с Python - PullRequest
0 голосов
/ 18 февраля 2019

Похоже, что есть ряд библиотек python, выделенных для проверки правильности схемы OpenApi.Хотя это может быть полезно, я, честно говоря, могу просто написать свою схему OpenApi здесь, в https://editor.swagger.io, и проверить ее / преобразовать / довольно отформатировать.

Затем у меня останутся клиенты, которые могут отправлять любые сообщения.грязных данных в мою документированную конечную точку OpenApi.

Итак, я не могу найти библиотеку, которая имеет схему OpenApi и JSON (обычно из HTTP-запроса) проверяет входной / данные JSON по схеме,Все обязательные поля на месте?Я ожидаю, что age будет числом, поэтому не проходите проверку, потому что она была передана в виде строки и т. Д.

Самое близкое, что я мог найти, это https://flask -restplus.readthedocs.io / en / stable / но

  1. Он связан с Flask и не может использоваться в других средах
  2. Он не принимает схему OpenApi, но создает ее иЯ обнаружил, что он довольно неполный
  3. В его репозитории GitHub есть множество открытых проблем, над которыми не работают / не подтверждаются

Есть ли какая-либо библиотека python, которая проверяет входные данные снова?схема OpenApi?

Ответы [ 2 ]

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

Что касается Q1 2019 , такого инструмента нет.Хороший список существующих инструментов: https://openapi.tools/#data-validators

В качестве обходного пути можно использовать один из существующих инструментов и вызвать двоичный файл, созданный с помощью такого инструмента из python.

PS.Существует https://github.com/p1c2u/openapi-core, но, похоже, не поддерживается полная версия OpenApi 3.

0 голосов
/ 18 февраля 2019

JSON-схема полностью совместима с OpenAPI 3 - read The Docs

Вы можете установить json schema обертка для Python и проверьте ваши application/json данные.

...