Что такое JSON
Когда ваше приложение задаёт вопрос, ответ приходит в виде текста в формате под названием . Он стал стандартом по умолчанию, потому что он читаем людьми и при этом легко обрабатывается программами. Вы будете видеть его постоянно, так что умение его читать стоит того.
JSON строится из ключей и значений. Ключ — это метка в кавычках; значение — это данные, привязанные к ней. Вот реальный пример, описывающий одного пользователя:
{
"id": 42,
"name": "Ada Lovelace",
"email": "[email protected]",
"isAdmin": false,
"loginCount": 137,
"tags": ["beta", "early-access"],
"profile": {
"city": "London",
"avatarUrl": null
}
}
Читайте это как анкету, которую кто-то заполнил. "name" — это поле, "Ada Lovelace" — это то, что в нём написали. Всю работу делают две структуры:
- object заключён в фигурные скобки
{ }. Это связка пар ключ/значение — как одна запись. Весь пример выше — это один object. - array заключён в квадратные скобки
[ ]. Это упорядоченный список значений. Выше"tags"содержит array из двух строк.
Обратите внимание, что "profile" — это object внутри object. JSON вкладывается: значение может само быть object или array, настолько глубоко, насколько нужно. Именно так один ответ может описать пользователя, его адрес и его последние десять заказов сразу.
Нарисованный в виде дерева, тот же объект пользователя показывает свою форму с одного взгляда — плоские поля сверху, а список и вложенный объект ответвляются в стороны:
{ } user (объект)
├── id ............ 42 (число)
├── name .......... "Ada Lovelace" (строка)
├── isAdmin ....... false (булево)
├── tags .......... [ ] (массив)
│ ├── "beta"
│ └── "early-access"
└── profile ....... { } (объект)
├── city .......... "London" (строка)
└── avatarUrl ..... null (null = нет значения)