ФОРМАТ · TEXT
NDJSON
Соглашение об обмене JSON-записями через переводы строк.
- Расширения
- ndjson
- MIME type
- Встречается application/x-ndjson; это практическое значение, не единый стандарт IANA
- Представление
- text
- Потоковая обработка
- да
- Комментарии
- нет
- Поддержка схемы
- Внешняя схема записи
- Порядок
- Последовательность строк значима
- null
- null
- Diff
- Хорошая для потока событий
- Архивация
- Храните версию контракта
Преимущества
- Подходит для последовательных HTTP-потоков и журналов
- Использует ту же модель, что JSON Lines; различие чаще относится к названию и правилам конкретного инструмента.
Ограничения
- Название не гарантирует одинаковое поведение парсеров
Типичные ошибки
- Молча пропускать повреждённые строки
Маленький пример
{"event":"opened","id":1}
Среда: Python 3; пример сохранён отдельно как example.ndjson.
python3 -c "import json; [json.loads(s) for s in open('example.ndjson', encoding='utf-8')]"