Как преобразовать swagger в одноуровневый json?
Коллеги привет.
Дано:
- -Множество сваггеров (>5) версии 2.* и 3.*
- -Бек который парсит свагер и отдает плоскую структуру вебу и и веб из которого пользователь вызывает едпоинт.
Нужно из кастомного веб интерфейса вызывать едпоинты, которые описаны в swagger'aх Написал уже парсинг для 2.* версии сваггера, скрипт преобразует сложную структуру свагера в плоскую, типа:
{
"method": "getJointPOST",
"name_method": "Получение (JOINT)",
"http_method": "post",
"path": "joint",
"request": {
"trace_id": {
"type": "string",
"description": "Идентификатор запроса",
"allowEmptyValue": false,
"pattern": "^\\p{ASCII}*$",
"in": "body",
"enum": null
},
"user_info": {
"type": "string",
"description": "Информация о пользователе",
"allowEmptyValue": false,
"pattern": "^\\p{ASCII}*$",
"in": "body",
"enum": null
},
"id_list": {
"type": "array",
"description": "Cписок ID",
"allowEmptyValue": true,
"items": {
"type": "string"
},
"in": "body",
"enum": null
}
}
С такой структурой очень легко работать как фронту (flask) так и беку (в данном случае python). Как сказал ранее, такая преобразовалка есть для второй версии сваггера, но теперь стоит вопрос про третий сваггер aka OpenAPI, а он достаточно хипстерский (множество вариантов написания документации), что добавляет много головной боли по парсингу.
Есть у кого-нибудь опыт автоматического парсинга свагера для своих целей?