LFUnminify, онлайн-инструмент для форматирования кода от Ludovic Frank

Форматирование JSON онлайн

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

Здесь появится читаемый код с отступами

Почему JSON приходит в сжатом виде

JSON стал стандартным языком API, а API оптимизируют размер данных, а не удобство чтения. Ответ REST-метода или сервера GraphQL сериализуется без единого пробела: для сети это удобно, а человеку мешает читать. То же относится к конфигурациям, которые записывают инструменты разработки, структурированным строкам журналов, блокам JSON-LD внутри страницы и данным, скопированным с вкладки сети в инструментах разработчика. Форматирование возвращает этим данным видимую структуру без изменения их назначения.

Форматирование проясняет структуру

JSON с отступами сразу отвечает на вопросы о структуре. Насколько глубоко вложен объект? Поле содержит массив объектов или объект массивов? Какой ключ имеет значение null вместо ожидаемых данных? Где заканчивается одна запись и начинается следующая? Поиск отсутствующего или неверно написанного ключа в отформатированных данных занимает секунды. В одной длинной строке та же задача часто заставляет отказаться от ручного просмотра и писать отдельный скрипт.

Ошибки JSON обнаруживаются сразу

Прежде чем вывести данные в удобном виде, инструмент должен их разобрать, поэтому форматирование служит и быстрой проверкой синтаксиса. Лишняя запятая в конце, строка в одинарных кавычках, неэкранированная кавычка внутри значения или обрезанный ответ остановят разбор. Вместо результата вы увидите сообщение об ошибке. Именно так часто выясняется, что отлаживаемый ответ API пришёл не целиком или в конфигурационном файле появилась одна лишняя запятая.

JSON, JSON Lines и JSONP

Эта страница форматирует один JSON-документ. Если у вас журнал, где на каждой строке записан отдельный JSON-объект, форматируйте нужные строки по отдельности: весь файл не является единым корректным документом. Если же ответ начинается с имени функции, в вызов которой обёрнуты данные, это JSONP, а не JSON. Именно поэтому инструмент иногда распознаёт такие данные как JavaScript. В этом случае определение верное, и форматирование как JavaScript всё равно даёт вполне читаемый результат.

Частые вопросы

Проверяет ли инструмент корректность JSON?

Фактически да. Перед форматированием документ нужно разобрать, поэтому синтаксическая ошибка останавливает обработку и показывается вместо результата. Это быстрый способ проверить, что данные представляют собой корректный JSON.

Сохраняется ли порядок ключей?

Да. Ключи остаются в том порядке, в котором записаны в исходном документе. Ничего не сортируется и не переставляется. Меняются только пробелы и переносы строк.

Можно ли форматировать очень большие ответы API?

Да, в разумных пределах. Данные размером в несколько мегабайт обрабатываются, хотя это занимает некоторое время: разбор выполняется на вашем компьютере. Ничего не отправляется на сервер, поэтому можно вставлять ответы, содержащие внутренние данные.

Отформатировать другой формат