Аякс (программирование)


Ajax (также AJAX / ˈ æ k s / ; сокращение от « Синхронный J avaScript и X ML » или « Синхронная передача JavaScript ( x -fer)» [1] [ 2] ) — это набор веб-интерфейсов . методы разработки , использующие различные веб-технологии на стороне клиента для создания асинхронных веб-приложений . С помощью Ajax веб-приложения могут отправлять и получать данные с сервера асинхронно (в фоновом режиме), не вмешиваясь в отображение и поведение существующей страницы. Отделяя уровень обмена данными от уровня представления, Ajax позволяет веб-страницам и, соответственно, веб-приложениям динамически изменять контент без необходимости перезагрузки всей страницы. [3] На практике современные реализации обычно используют JSON вместо XML.

Ajax — это не технология, а скорее концепция программирования. HTML и CSS можно использовать в сочетании для разметки и оформления информации. Веб-страницу можно изменить с помощью JavaScript для ее динамического отображения и предоставления пользователю возможности взаимодействовать с новой информацией. Встроенный объект XMLHttpRequest используется для выполнения Ajax на веб-страницах, позволяя веб-сайтам загружать контент на экран без обновления страницы. Ajax — это не новая технология и не новый язык. Вместо этого существующие технологии используются по-новому.

В начале-середине 1990-х годов большинство веб-сайтов основывались на полноценных HTML-страницах. Каждое действие пользователя требовало загрузки с сервера совершенно новой страницы. Этот процесс был неэффективным, о чем свидетельствует пользовательский опыт: весь контент страницы исчезал, а затем появлялась новая страница. Каждый раз, когда браузер перезагружал страницу из-за частичного изменения, весь контент приходилось пересылать, хотя менялась лишь часть информации. Это создавало дополнительную нагрузку на сервер и делало пропускную способность фактором, ограничивающим производительность.

В 1996 году тег iframe был представлен Internet Explorer ; как и элемент объекта , [ необходима ссылка ] он может асинхронно загружать часть веб-страницы. В 1998 году группа Microsoft Outlook Web Access разработала концепцию объекта сценария XMLHttpRequest . [4] Он появился как XMLHTTP во второй версии библиотеки MSXML , [4] [5] , которая поставлялась с Internet Explorer 5.0 в марте 1999 года . [6]

Функциональность элемента управления Windows XMLHTTP ActiveX в IE 5 позже была реализована Mozilla Firefox , Safari , Opera , Google Chrome и другими браузерами как объект JavaScript XMLHttpRequest. [7] Microsoft приняла собственную модель XMLHttpRequest, начиная с Internet Explorer 7 . Версия ActiveX по-прежнему поддерживается в Internet Explorer, но не в Microsoft Edge . Полезность этих фоновых HTTP- запросов и асинхронных веб-технологий оставалась довольно неясной, пока она не начала появляться в крупномасштабных онлайн-приложениях, таких как Outlook Web Access (2000) [8] и Oddpost (2002). [9]

Google широко внедрил совместимый со стандартами кросс-браузерный Ajax с Gmail (2004 г.) и Google Maps (2005 г.). [10] В октябре 2004 года публичная бета-версия Kayak.com стала одним из первых крупномасштабных применений в электронной коммерции того, что их разработчики в то время называли «вещью xml http». [11] Это увеличило интерес к Ajax среди разработчиков веб-программ.