Что такое JSON?

Открытый стандартный формат данных или обмен полуструктурированными данными — это нотация объектов JavaScript (JSON). И люди, и машины могут читать его, потому что он основан на тексте. В JSON полуструктурированные данные собираются в виде сообщений, называемых «событиями», логически группируются в пакеты, а затем передаются на платформу данных через конвейер данных. Полуструктурированные данные могут поступать из различных источников и устройств, включая мобильные телефоны, веб-браузеры, серверы и устройства IoT. Несмотря на множество применений, передача данных между серверами и онлайн-приложениями или устройствами, подключенными к Интернету, особенно популярна. Это связано с тем, что JSON является текстовым форматом, и такие приложения часто могут принимать только текстовые данные.

Большинство современных компьютерных языков могут анализировать и создавать данные JSON, потому что они получены из JavaScript. В настоящее время это обычный и широко используемый формат для обмена данными в Интернете. Двумя основными структурами данных, используемыми для его представления, являются упорядоченные списки (известные как «массивы») и пары «имя/значение» (иногда называемые «объектами»), обе из которых взяты из языка JavaScript. Мы можем объяснить это с точки зрения непрофессионала, сказав, что это просто расширенная версия и SURROGATE для XML.

Теперь возникает вопрос: «Почему не XML?»

Ответ заключается в том, что модели данных многих компьютерных языков несовместимы с определением XML, что затрудняет синтаксический анализ для программистов и отнимает много времени. Поскольку XML имеет более низкое отношение данных к разметке, чем JSON, людям труднее читать и писать.

JSON-иллюстрация

Представьте себе страну с иммиграцией (Сингапур), где сосуществуют люди разного расового, культурного и языкового происхождения.

Они, безусловно, могут стремиться к четкому и эффективному общению в своих группах. Если они общаются с кем-то на языке, который этот человек не понимает, у них возникнут проблемы (представьте, что функция PHP общается с другой функцией PHP). (Рассмотрите функцию PHP, напрямую взаимодействующую с функцией Javascript)

Чего им не хватает?

Обе стороны должны понимать язык другой стороны. (представьте интерпретацию функции PHP с использованием библиотеки синтаксического анализатора в Javascript)

Или они могут просто решить, на каком языке сказать «Привет». Да, сказать «привет» — это все, что нужно, независимо от того, китаец ли собеседник, малайец или индиец.

В результате все они узнают, что означает слово «привет». независимо от того, исходит ли оно от индийца, европейца, малайца или китайца, приветствуйте их на их родном языке.

JSON — это всего лишь стандартная структура и норма, которая разъясняет ожидания и дает рекомендации для всех (или для любого языка программирования).

* На самом деле, я считаю, что это больше для разработчика. Вам не нужно осваивать всю их грамматику, чтобы анализировать информацию, которую вы получаете от Ruby, JS, GoLang или Java, если вы, например, программируете на PHP. Вместо этого, если они отправляют вам информацию в формате JSON, все, что вам нужно понять, чтобы прочитать ее, это JSON!

Веб-приложения чаще всего используют JSON для передачи данных с сервера в браузер.

Ajax обычно используется для передачи данных JSON, что позволяет вашему веб-приложению взаимодействовать с сервером и браузером без обновления страницы.

Например:

В интернет-магазине покупатель нажимает миниатюру продукта.

JavaScript, запущенный в браузере, отправляет PHP-скрипту, работающему на сервере, Ajax-запрос, отправляя ему идентификатор выбранного продукта.

Строка JSON отправляется обратно в браузер после того, как сценарий PHP кодирует и получает название продукта, описание, цену и другую информацию из базы данных продуктов.

Строка JSON декодируется с помощью JavaScript, запущенного в браузере, который затем показывает пользователю сведения о продукте на веб-сайте.

При отправке данных из браузера на сервер вы также можете использовать JSON.

При использовании в качестве параметра GET или POST строка JSON кодируется правильно. Из-за обычно простого характера данных, предоставляемых в Ajax-запросах (например, идентификатор продукта), эта стратегия менее популярна. Данные в URL-адресе обычно просто кодируются как часть запроса GET.

Заключение

Если строка JSON правильно закодирована как параметр GET или POST, вы также можете использовать JSON для передачи данных из браузера на сервер. Из-за обычно простого характера данных, предоставляемых в Ajax-запросах (например, идентификатор продукта), эта стратегия менее популярна. Данные в URL-адресе обычно просто кодируются как часть запроса GET.

Вы можете получить хорошее представление о JSON и связанных с ним вещах, если пройдете курс от Tutort Academy.