Конвертер OpenAPI v2 в v3
Гид
Конвертер OpenAPI v2 в v3
Вставьте спецификацию Swagger 2.0 и получите валидную версию OpenAPI 3.0.3 в формате JSON или YAML. Конвертер применяет официальные правила структурного соответствия — перемещает definitions под components/schemas, сжимает host, basePathи schemes в servers, разбивает consumes и produces на отдельные операции content мапы и перестраивает параметры формы и определения безопасности — таким образом, ваша спецификация будет работать с современными инструментами OpenAPI.
Как использовать
- Вставьте свою спецификацию Swagger 2.0 в поле ввода. Поддерживается как JSON, так и YAML; формат автоматически определяется.
- Выберите формат вывода: сохранить исходный формат или принудительно использовать JSON или YAML.
- Оставить Исправление отсутствующих обязательных полей для автоматического заполнения обязательных полей версии 3, таких как
info.title,info.version, и отсутствующих описаний ответов, когда исходный формат версии 2 не включает их. - Просмотрите обзор конверсии и любые предупреждения, показанные выше результата, затем скопируйте или загрузите полученный OpenAPI 3.0.3 спецификацию.
Возможности
- Вход в формате JSON и YAML, выход в формате JSON или YAML — выберите предпочитаемый формат или сохраните формат входа.
- Структурное соответствие —
definitions→components/schemas,securityDefinitions→components/securitySchemes,parameters/responsesперемещаются подcomponents, и каждый$refуказатель переписывается для соответствия. - Серверы из host, basePath, schemes — объединяются в массив v3
serversс предпочтением HTTPS при наличии нескольких схем. - Контент-неготиация —
consumesиproducesпереводятся в отдельные операцииrequestBody.contentиresponses[*].contentмапы. - Параметры тела и формы —
in: bodyстановятся полем v3requestBodyиin: formDataполей группируются в схему тела запроса.multipart/form-dataилиapplication/x-www-form-urlencodedЗапроса. - Обновление потока безопасности — значения OAuth2
flowпереписываются на объект v3flows(/implicit,password,clientCredentials,authorizationCode). - Режим исправления — при включении заполняет отсутствующие обязательные поля, чтобы выходной формат проходил проверку v3 вместо того, чтобы не проходить из-за незначительных дефектов исходного формата.
- Обзор конверсии и предупреждения — количество преобразованных путей, схем и схем безопасности, а также предупреждения относительно того, что не может быть преобразовано один к одному.
- Работает полностью в браузере — ваша спецификация никогда не покидает страницу.
Часто задаваемые вопросы
-
Какие структурные изменения произошли между Swagger 2.0 и OpenAPI 3.0?
OpenAPI 3.0 перегруппировал повторно используемые элементы под единственный
componentsобъект:definitionsстановитсяcomponents/schemas,parametersстановитсяcomponents/parameters,responsesстановитсяcomponents/responsesиsecurityDefinitionsстановитсяcomponents/securitySchemes. Транспортная поверхность также изменилась:host,basePathиschemesобъединились в массив полных базовых URL, в то время как скрытыеserversмассивы заменились на явныеconsumesиproducesмапы, идентифицирующие типы медиа на каждом теле запроса и ответа.contentПочему в OpenAPI 3.0 потребовалась новая форма тел запроса? -
В Swagger 2.0 тело запроса было просто параметром с
, а поля формы были параметрами с
in: body. Это объединяло две разные темы (параметры пути/запроса/заголовка против тела запроса) в один список и делало негативную неготиацию неудобной. OpenAPI 3.0 разделил их: параметры используются только для пути, запроса, заголовка и куки; тело запроса перемещается в верхний уровеньin: formDataмап. Это позволяет описывать один конечный пункт, который принимаетrequestBodyсcontentс разными схемами для каждого.application/json,multipart/form-dataиapplication/x-www-form-urlencodedЯвляются ли Swagger 2.0 и OpenAPI 3.0 взаимозаменяемыми? -
Нет. Они — версии форматов описания, а не протоколы API, поэтому спецификация после конвертации не изменяет поведение вашего сервиса в режиме выполнения — но инструменты (генераторы, проверщики, мок-серверы, UI-представители) должны понимать версию, которую вы публикуете. OpenAPI 3.0 ввел функции, не имеющие аналогов в версии 2, включая
, коллбэки, ссылки и более богатые потоки безопасности. В будущем (v3 → v2) это в целом является потерей, в то время как движение назад (v2 → v3) в основном механическим, поскольку v2 является строгим подмножеством выразительности v3.
oneOf/anyOf/notЧто означает разрешение в данном контексте? -
— это указатель JSON, такой как
$ref. Конвертация должна переписывать каждый указатель, потому что путь назначения изменяется:А
$ref, и так далее. Сам указатель не разрешается (документ всё ещё ссылается по месту), но он должен быть переписан в синхронизированном режиме с изменением структуры, чтобы полученная спецификация v3 оставалась внутренне согласованной.#/definitions/UserВставьте свою спецификацию Swagger 2.0 здесь (YAML или JSON)...#/definitions/Userпревращается в#/components/schemas/User,#/parameters/AuthHeaderпревращается в#/components/parameters/AuthHeaderКонвертер OpenAPI v2 в v3 1
Установите наши расширения
Добавьте инструменты ввода-вывода в свой любимый браузер для мгновенного доступа и более быстрого поиска
恵 Табло результатов прибыло!
Табло результатов — это интересный способ следить за вашими играми, все данные хранятся в вашем браузере. Скоро появятся новые функции!
Подписаться на новости
все Новые поступления
всеОбновлять: Наш последний инструмент было добавлено 18 Июня, 2026
