русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Концепція AJAX


Дата додавання: 2014-11-27; переглядів: 1131.


AJAX (Asynchronous JavaScript And XML) — підхід до побудови користувацьких інтерфейсів веб-застосунків, за яких веб-сторінка не перезавантажуючись у фоновому режимі відправляє запити на сервер і сама звідти довантажує потрібні користувачу дані. AJAX — один з компонентів концепції DHTML, а не самостійна технологія.

AJAX підхід до розробки призначених для користувача інтерфейсів комбінує кілька основних методів і прийомів:

Використання DHTML для динамічної зміни змісту сторінки.

Використання XMLHttpRequest для звернення до сервера «на льоту», не перезавантажуючи всю сторінку повністю

альтернативний метод — динамічне підвантаження коду JavaScript в тег <SCRIPT> з використанням DOM, що здійснюється із використанням формату JSON)

динамічне створення дочірніх фреймів

Використання цих підходів дозволяє створювати набагато зручніші веб-інтерфейси користувача на тих сторінках сайтів, де необхідна активна взаємодія з користувачем. AJAX — асинхронний, тому користувач може переглядати далі контент сайту, поки сервер все ще обробляє запит. Використання AJAX стало найбільш популярне після того, як компанія Google почала активно використовувати його при створенні своїх сайтів, таких як Gmail, Google Maps і Google Suggest.

На відміну від класичної моделі веб-застосування за моделю AJAXсервер віддає тільки ту частину документа, яка змінилася.

Використання Ajax починається з JavaScript-об'єкта, званого XMLHttpRequest. Як і передбачає ім'я, він дозволяє в клієнтській частині вашого коду виконувати HTTP-запити і аналізує відповідь XML-сервера. Перший крок у вивченні Ajax - створення даних об'єкта XMLHttpRequest. Метод протоколу HTTP при використанні для запиту (GET або POST) та шляхи потім встановлюються в об'єкті XMLHttpRequest.

Щоб браузер не завис, очікуючи відповіді сервера, потрібно зареєструвати функцію зворотного виклику з допомогою XMLHttpRequest і послати асинхронно запит XMLHttpRequest. Контроль залишиться за браузером, а функція зворотного виклику буде активована, коли прийде відповідь сервера.

На Web-сервер запит прийде так само, як і будь-який інший HttpServletRequest (якщо працюємо із Java). Після аналізу параметрів запиту, сервлет виконає всі необхідні дії для програми, серіалізує відповідь у форматі XML і вписує її в HttpServletResponse.

Після повернення відповіді до клієнта запускається функція зворотного виклику, зареєстрована в XMLHttpRequest, яка обробляє повернений сервером XML-документ. Нарешті, призначений для користувача інтерфейс оновлюється відповідно до даних сервера, використовуючи JavaScript-код для перетворення сторінки.

Відповідь сервера може бути не лише у форматі XML, як випливає з назви технології. Крім XML, можна отримати відповідь у вигляді звичайного тексту, або ж JSON (Javascript Object Notation).

Якщо відповідь була отримана простим текстом, то його можна відразу вивести в контейнер на сторінці.

При отриманні відповіді у вигляді XML, зазвичай відбувається обробка отриманого XML документа на стороні клієнта і перетворення даних до (X) HTML.

При отриманні відповіді у форматі JSON клієнт повинен лише виконати отриманий код (функція Javascript `а eval) для отримання повноцінного об'єкту Javascript:

var responsedata = eval("(" + Request.responseText + ")")

Але тут потрібно бути обережним і враховувати той факт, що з використанням технології JSON може бути переданий шкідливий код. Тому перед виконанням отриманого з сервера коду слід його ретельно перевірити і обробити. Існує така практика, як "холостий" запит, при якому ніякої відповіді від сервера не очікують, лише змінюють дані на стороні сервера.

Python

Python— інтерпретована об'єктно-орієнтована мова програмування високого рівня з динамічною семантикою. В мові програмування Pythonпідтримується декілька парадигм програмування, зокрема: об'єктно-орієнтована, процедурна, функціональна та аспектно-орієнтована.


<== попередня лекція | наступна лекція ==>
Архітектура пакету Servlet | Оператори


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн