API возвращает ответ на 200 строк JSON, сжатый в одну строку. Вам нужно найти одно вложенное поле. Поэтому вы копируете его, открываете вкладку браузера, переходите на один из десятка сайтов-форматтеров JSON, вставляете, нажимаете «Format» и всматриваетесь в результат. Если в JSON есть что-то чувствительное — токены, данные пользователей, внутренние ID — вы только что отправили это на сторонний сервер.
Это одна из самых частых микро-задач в разработке ПО, и большинство разработчиков решают её самым неэффективным способом.
Подход через терминал
В macOS есть python3, поэтому JSON можно пропустить через python3 -m json.tool в Terminal. Это работает для корректно сформированных данных. Но команда спотыкается на висячих запятых, выдаёт непонятные сообщения об ошибках для некорректного JSON, а результат остаётся запертым в окне терминала. Нет подсветки синтаксиса, нет сворачиваемых узлов и нет способа быстро скопировать вложенный путь.
Некоторые разработчики устанавливают jq через Homebrew — это мощнее, но добавляет ещё одну зависимость и требует изучения его синтаксиса запросов для чего-либо сложнее базового форматирования.
Нативный форматтер JSON прямо на вашем Mac
Bellows включает форматтер JSON как один из 41 встроенного инструмента для разработчиков. Вставьте или введите JSON в панель ввода и мгновенно получите отформатированный, читаемый результат. Подключение к сети не требуется — всё выполняется локально на вашем Mac.
Определение содержимого буфера обмена
Скопируйте строку JSON в буфер обмена и откройте Bellows. Приложение распознаёт содержимое JSON и автоматически предлагает форматтер. Никакой навигации по меню — нужный инструмент уже наготове.
Часть большего набора инструментов
Форматирование JSON редко происходит в изоляции. Возможно, вам нужно раскодировать строку Base64, чтобы получить JSON, или извлечь payload из JWT, содержащий JSON, или декодировать URL-параметр, в котором хранится JSON-объект. С 41 инструментом в одном приложении вы можете выполнять эти операции последовательно, не переключаясь между разными утилитами.
Когда это особенно нужно
Отладка payload вебхука в 23:00. Просмотр конфиг-файла, который коллега вставил в Slack. Изучение экспорта Core Data. Проверка структуры мок-ответа перед написанием теста. Именно в такие моменты открывать вкладку браузера тяжелее всего — и именно тогда нативное приложение в строке меню приносит наибольшую пользу.