«Unexpected token», «Unexpected end of JSON input» — такие сообщения обычно выдаёт приложение, которому достался испорченный JSON. Найти место ошибки в большом документе проще в редакторе, который проверяет синтаксис по мере ввода и показывает строку.
Как проверить JSON
- Откройте песочницу JSON и вставьте документ или откройте файл (Файл → Открыть файл…).
- Проверка запускается сама. Если ошибок нет, над редактором будет «Ошибок нет», справа — дерево документа.
- Если есть ошибки, строка подсвечивается, а под редактором появляется список с номерами строк. Щелчок по ошибке переводит курсор к ней.

Что проверяется
Редактор проверяет JSON строго, по стандарту RFC 8259 — так, как его прочитает большинство серверов:
- ключи и строки — только в двойных кавычках;
- нет запятой после последнего элемента;
- нет комментариев;
- числа без ведущих нулей и без
NaN/Infinity; - управляющие символы в строках экранированы (
\n,\t); - после корневого значения нет лишнего текста.
Если вы правите конфигурацию, где комментарии допустимы (JSON5, JSONC в VS Code), строгая проверка их отметит — это ожидаемо.
Типичные ошибки и что они значат
| Симптом | Причина |
|---|---|
| Ошибка в строке после последнего элемента | висящая запятая [1, 2, ] |
| Ошибка на первом символе ключа | ключ без кавычек или в одинарных кавычках |
| Ошибка в конце документа | не закрыта скобка или кавычка выше по тексту |
| Ошибка внутри строки | неэкранированная кавычка или перенос строки |
Синтаксис и схема — разные проверки
Корректный по синтаксису JSON может не соответствовать ожиданиям системы: не хватает обязательного поля, вместо числа строка. Это проверяется по JSON Schema — справа во вкладке Проверка по схеме. Как это сделать — в гайде «Проверка JSON по JSON Schema».
Пример
{
"id": 42,
"items": ["a", "b",],
'status': "NEW"
}
Здесь две ошибки: висящая запятая после "b" и ключ в одинарных кавычках. Редактор отметит первую из них; после исправления — вторую. Корректный вариант:
{
"id": 42,
"items": ["a", "b"],
"status": "NEW"
}
Вопросы и ответы
Ошибка указывает на строку, где всё правильно. Почему? Парсер замечает ошибку там, где ожидание нарушилось, а причина часто выше: незакрытая кавычка или скобка в предыдущих строках. Ищите от указанной строки вверх.
Как найти пропущенную скобку в большом документе? Поставьте курсор рядом со скобкой — парная подсветится. Сворачивание блоков слева от номеров строк тоже помогает: блок, который не сворачивается так, как ожидается, указывает на место ошибки.
Нужен ли JSON с комментариями (JSONC) — что делать? Строгий JSON их не допускает, и большинство API такие документы отклонят. Если конфигурация читается программой, которая понимает JSONC (например, настройки VS Code), сообщения о комментариях можно не учитывать.
