2.3 Формат обмена данными между клиентом и базой данных
JSON - простой, основанный на использовании текста, способ хранить и передавать структурированные данные. С помощью простого синтаксиса можно легко хранить все, что угодно, начиная от одного числа до строк, массивов и объектов, в простом тексте. Также можно связывать между собой массивы и объекты, создавая сложные структуры данных.
После создания строки JSON, ее легко отправить другому приложению или в другое место сети, так как она представляет собой простой текст.
JSON имеет следующие преимущества:
· он компактен;
· его предложения легко читаются и составляются как человеком, так и компьютером;
· его легко преобразовать в структуру данных для большинства языков программирования (числа, строки, логические переменные, массивы и так далее);
· многие языки программирования имеют функции и библиотеки для чтения и создания структур JSON.
Название JSON означает JavaScript Object Notation (представление объектов JavaScript). Как и представляет имя, он основан на способе определения объектов (очень похоже на создание ассоциативных массивов в других языках) и массивов.
Наиболее частое распространенное использование JSON - пересылка данных от сервера к браузеру. Обычно данные JSON доставляются с помощью AJAX, который позволяет обмениваться данными браузеру и серверу без необходимости перезагружать страницу.
Пример:
Пользователь нажимает миниатюру продукта в онлайн магазине.
JavaScript, выполняющийся на браузере, генерирует запрос AJAX к скрипту PHP, запущенному на сервере, передавая ID выбранного продукта.
Скрипт PHP получает название продукта, описание, цену и другую информацию из базы данных. Затем составляет из данных строку JSON и отсылает ее браузеру.
JavaScript, выполняющийся на браузере, получает строку JSON, декодирует ее и выводит информацию о продукте на странице для пользователя.
Также можно использовать JSON для отправки данных от браузера на сервер, передавая строку JSON в качестве параметра запросов GET или POST. Но данный метод имеет меньшее распространение, так как передача данных через запросы AJAX может быть упрощена. Например, ID продукта может быть включен в адрес URL как часть запроса GET.
Библиотека jQuery имеет несколько методов, например, getJSON() и parseJSON(), которые упрощают получение данных с помощью JSON через запросы AJAX.
Есть несколько основных правил для создания строки JSON:
· Эта строка содержит либо массив значений, либо объект (ассоциативный массив пар имя/значение).
· Массив заключается в квадратные скобки ([ и ]) и содержит разделенный запятой список значений.
· Объект заключается в фигурные скобки ({ и }) и содержит разделенный запятой список пар имя/значение.
· Пара имя/значение состоит из имени поля, заключенного в двойные кавычки, за которым следует двоеточие (:) и значение поля.
· Значение в массиве или объекте может быть:
· Числом (целым или с плавающей точкой)
· Строкой (в двойных кавычках)
· Логическим значением (true или false)
· Другим массивом (заключенным в квадратные скобки)
· Другой объект (заключенный в фигурные скобки)
· Значение null
Чтобы включить двойные кавычки в строку, нужно использовать обратную косую черту: ". Так же, как и во многих языках программирования, можно помещать управляющие символы и шестнадцатеричные коды в строку, предваряя их обратной косой чертой. Смотрите детали на сайте JSON.
Сравнение JSON и XML
Во многих отношениях JSON можно рассматривать как альтернативу XML, по крайней мере, в сфере веб приложений. Концепция AJAX оригинально основывалась на использовании XML для передачи данных между сервером и браузером. Но в последние годы JSON становится все более популярным для переноса данных AJAX.
Хотя XML является проверенной технологией, которая используется в достаточном количестве приложений, преимуществами JSON являются более компактный и простой для распознавания формат данных.
Версия XML имеет существенно больший размер. В действительности она имеет длину 1128 символов, а вариант JSON - только 323 символа. Версию XML также достаточно трудно воспринимать.
Конечно, это радикальный пример. И возможно создать более компактную запись XML. Но даже она будет существенно длиннее эквивалента на JSON.
- ВВЕДЕНИЕ
- ГЛАВА 1. ОБЗОР И АНАЛИЗ ПРОГРАММНЫХ СРЕДСТВ ИСПОЛЬЗУЕМЫХ В РОЗНИЧНОЙ ТОРГОВЛЕ
- 1.1 Постановка задачи
- 1.2 Мобильные технологии и решения в торговле
- 1.3 Анализ существующих программных средств используемых в розничной торговле
- 1.4 Современные средства разработки программ для торговли
- 1.5 Технология клиент-сервер
- 1.6 Web-приложения
- ГЛАВА 2. ПРОЕКТИРОВАНИЕ И ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ПРИЛОЖЕНИЯ «ЭЛЕКТРОННЫЙ ПОМОЩНИК»
- 2.1 Протокол передачи данных
- 2.2 Язык разметки XML
- 2.3 Формат обмена данными между клиентом и базой данных
- 2.4 Выбор средств реализации