Конвертер XML в JSON
Мгновенно конвертируйте XML в JSON
XML-ввод
Параметры
JSON-вывод
Результат конвертации появится здесь...
Обзор
Конвертер XML в JSON превращает насыщенный разметкой XML — ответы SOAP, ленты RSS/Atom, устаревшие файлы конфигурации — в чистый JSON, который ваш код на JavaScript или Node.js может использовать напрямую. Инструмент работает на настоящем XML-парсере, а не на регулярных выражениях, поэтому проверяет корректность структуры (well-formedness), сообщает точную строку и столбец повреждённого тега и даёт детальный контроль над тем, как атрибуты, пространства имён и повторяющиеся элементы представлены в получившемся JSON.
Что распознаёт и обрабатывает этот конвертер
- •Настоящая валидация XML: некорректный XML (незакрытые теги, несовпадающая вложенность, неверный синтаксис атрибутов) отклоняется с точным указанием строки и столбца, а не молчаливой догадкой
- •Настраиваемая обработка атрибутов: сохранять атрибуты с префиксом (@_id), преобразовывать их в обычные свойства объекта, группировать под единым объектом $attributes или полностью отбрасывать
- •Стратегии пространств имён: сохранять префиксы пространств имён в именах тегов как есть, убирать их для более чистых ключей или сохранять URI пространства имён отдельно как метаданные
- •Очистка SOAP: автоматически удаляет обёрточные элементы Envelope/Body, характерные для ответов SOAP, оставляя только полезную нагрузку (после применения не является безопасным для обратного преобразования)
- •Управление CDATA и разбором типов: можно развернуть секции CDATA в отдельное свойство и выбрать, насколько агрессивно текст, похожий на числа или булевы значения, преобразуется в реальные типы JSON
- •Принудительные пути массивов: укажите конкретные пути через точку, например rss.channel.item, которые всегда должны становиться JSON-массивом, даже если в ленте оказался только один элемент
- •Полностью работает в браузере: ваши XML-данные никогда не загружаются на сервер
Когда конвертировать XML в JSON
- •Миграция устаревшего SOAP API на REST-эндпоинт на основе JSON, чтобы код на JavaScript или Node.js мог обрабатывать ответ без SOAP-клиента
- •Разбор ленты RSS или Atom в JSON для создания агрегатора контента или новостной панели во фреймворке на JavaScript
- •Преобразование XML-файла конфигурации, например Maven pom.xml или .NET web.config, в JSON для программного редактирования или сравнения с другими форматами конфигурации
- •Изучение объёмного XML-ответа API путём преобразования его в читаемый, отформатированный JSON во время отладки
- •Импорт экспортированных XML-данных в JSON-ориентированную базу данных, такую как MongoDB
Как конвертировать XML в JSON
- 1.Вставьте XML в редактор ввода или загрузите файл .xml
- 2.Выберите способ представления атрибутов: свойства с префиксом, обычные свойства, группировка под $attributes или полное игнорирование
- 3.Выберите стратегию пространств имён — сохранить, удалить или сохранить как метаданные — в зависимости от того, насколько чистыми должны быть итоговые ключи
- 4.Включите очистку SOAP, если вы конвертируете SOAP-конверт и вам нужна только внутренняя полезная нагрузка
- 5.Нажмите «Конвертировать», затем скопируйте результат в формате JSON или скачайте его как отформатированный либо минифицированный .json
Особые случаи, о которых стоит знать
- •Единственный повторяющийся дочерний элемент (один <item> вместо нескольких) не преобразуется автоматически в массив, если вы не укажете его путь в принудительных путях массивов — иначе он превращается в обычный объект, что может сломать код, ожидающий массив
- •Смешанное содержимое — элемент, содержащий одновременно текст и дочерние элементы, — разворачивается в плоскую структуру, при этом текстовая часть отображается как свойство #text рядом с ключами дочерних элементов
- •Значения, похожие на числа с ведущим нулём, например «00123», или целые числа, выходящие за пределы безопасной точности JSON, по умолчанию сохраняются как строки; включайте агрессивный разбор типов только если уверены, что данные не содержат значений, похожих на ID
- •Комментарии XML отбрасываются при конвертации, поскольку в JSON нет эквивалентной конструкции
Ограничения
- •Циклическое преобразование (XML в JSON и обратно в XML) не гарантирует побайтового воспроизведения оригинала — порядок элементов, пробелы и комментарии сохраняются не полностью, если не включён режим Round-Trip Safe, и даже он регулирует только этап XML в JSON
- •Очень большие XML-документы (десятки мегабайт) могут превысить память браузера или замедлить работу парсера — для огромных файлов используйте потоковый (SAX) парсер или инструмент командной строки, например xmlstarlet
- •Инструмент проверяет только корректность структуры, но не соответствие XSD-схеме — документ, являющийся корректным XML, но нарушающий схему, всё равно будет сконвертирован без предупреждения
Нужно конвертировать в обратную сторону?
Если вы начинаете с объекта или массива JSON и вам нужен XML — например, чтобы обратиться к устаревшему SOAP-эндпоинту или создать файл конфигурации, который ожидает инструмент, работающий только с XML, — используйте конвертер JSON в XML. Он позволяет управлять отступами, решать, должны ли ключи с префиксом @ становиться атрибутами, и подавлять пустые элементы.