Динамическая веб-страница
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( декабрь 2012 г. ) |
Динамическая веб-страница — это веб-страница, созданная во время выполнения (во время выполнения программного обеспечения ), в отличие от статической веб-страницы , доставляемой по мере ее сохранения. — Динамическая веб-страница на стороне сервера это веб-страница , создание которой контролируется сервером приложений, обрабатывающим серверные сценарии. [1] В сервера сценариях на стороне параметры определяют, как будет происходить сборка каждой новой веб-страницы , включая настройку дополнительной обработки на стороне клиента. обрабатывает Динамическая веб-страница на стороне клиента веб-страницу с помощью JavaScript , выполняемого в браузере при ее загрузке. JavaScript может взаимодействовать со страницей через объектную модель документа (DOM), чтобы запрашивать состояние страницы и изменять его. Несмотря на то, что веб-страница может быть динамической на стороне клиента, она все равно может размещаться на статической службе хостинга, такой как GitHub Pages или Amazon S3 , если в нее не включен какой-либо серверный код.
Затем динамическая веб-страница перезагружается пользователем или компьютерной программой для изменения некоторого переменного содержимого. Информация об обновлении может поступать с сервера или в результате изменений, внесенных в DOM этой страницы. Это может привести к усечению или не усечению истории просмотров или созданию сохраненной версии для возврата, но динамическое обновление веб-страницы с использованием технологий AJAX не создаст страницу для возврата и не усечет историю веб-просмотра вперед отображаемой страницы. Используя AJAX, конечный пользователь получает одну динамическую страницу, управляемую как одну страницу в веб-браузере, в то время как фактический веб-контент, отображаемый на этой странице, может варьироваться. Механизм AJAX работает только в браузере, запрашивая части своего DOM, DOM для своего клиента, с сервера приложений. Конкретный сервер приложений может предлагать стандартизированный интерфейс в стиле REST для предоставления услуг веб-приложению. [2]
DHTML — это общий термин для технологий и методов, используемых для создания веб-страниц, которые не являются статическими веб-страницами , хотя он вышел из общего употребления после популяризации AJAX, термина, который сейчас сам используется редко. Сценарии на стороне клиента, сценарии на стороне сервера или их комбинация обеспечивают динамическую работу в Интернете в браузере.
Основные понятия [ править ]
Классическая гипертекстовая навигация, использующая только HTML или XHTML , предоставляет «статический» контент, то есть пользователь запрашивает веб-страницу и просто просматривает ее и информацию на этой странице.
Однако веб-страница также может обеспечивать «живой», «динамический» или «интерактивный» пользовательский интерфейс. Содержимое (текст, изображения, поля форм и т. д.) на веб-странице может меняться в зависимости от различных контекстов или условий.
Создать такой эффект можно двумя способами:
- Использование сценариев на стороне клиента для изменения поведения интерфейса на определенной веб-странице в ответ на действия мыши или клавиатуры или на определенные временные события. В этом случае динамическое поведение происходит внутри презентации .
- Использование сценариев на стороне сервера для изменения предоставленного источника страницы между страницами, настройки последовательности или перезагрузки веб-страниц или веб-контента, передаваемого в браузер. Ответы сервера могут определяться такими условиями, как данные в опубликованной HTML-форме , параметры в URL-адресе , тип используемого браузера, течение времени или состояние базы данных или сервера . [3]
Веб-страницы, использующие сценарии на стороне клиента, должны использовать технологию представления, широко называемую страницами с богатым интерфейсом . на стороне клиента Языки сценариев , такие как JavaScript или ActionScript , используемые для технологий динамического HTML (DHTML) и Flash соответственно, часто используются для управления типами мультимедиа (звук, анимация, изменяющийся текст и т. д.) презентации. Сценарии также позволяют использовать удаленные сценарии — метод, с помощью которого страница DHTML запрашивает дополнительную информацию с сервера, используя скрытый Frame , XMLHttpRequests или веб-службу .
Веб-страницы, использующие серверные сценарии, часто создаются с помощью серверных языков, таких как PHP , Perl , ASP , ASP.NET , JSP , ColdFusion и других языков. Эти серверные языки обычно используют Common Gateway Interface (CGI) для создания динамических веб-страниц . Эти типы страниц также могут использовать на стороне клиента первый тип (DHTML и т. д.).
История [ править ]
Трудно быть точным относительно «начала динамических веб-страниц» или хронологии, поскольку точная концепция имеет смысл только после «широкомасштабного развития веб-страниц». HTTP существует с 1989 года, HTML публично стандартизирован с 1996 года. Рост популярности веб-браузера начался с Mosaic в 1993 году. В период с 1995 по 1996 год на рынке было представлено несколько динамических веб-продуктов, включая Coldfusion , WebObjects , PHP и Active Server. Страницы .
Появление JavaScript (тогда известного как LiveScript) позволило создавать динамические веб-страницы на стороне клиента, при этом код JavaScript выполнялся в браузере клиента. [4] Буква «J» в термине AJAX изначально обозначала использование JavaScript, а также XML . С развитием обработки JavaScript на стороне сервера, например Node.js , первоначально разработанного в 2009 году, JavaScript также используется для динамического создания страниц на сервере, которые отправляются клиентам в полностью сформированном виде.
MediaWiki , система управления контентом , лежащая в основе Википедии, является примером изначально динамической веб-страницы на стороне сервера, взаимодействие с которой осуществляется через отправку форм и параметры URL-адреса. Со временем постепенно совершенствующиеся расширения, такие как визуальный редактор, также добавляли элементы, которые являются динамическими на стороне клиента, в то время как исходные динамические элементы на стороне сервера, такие как классическая форма редактирования, остаются доступными для использования ( постепенная деградация ) в случае необходимости. ошибки или несовместимости.
Серверные сценарии [ править ]
Программа, работающая на веб-сервере ( серверные сценарии ), используется для создания веб-контента на различных веб-страницах, управления сеансами пользователей и контроля рабочего процесса. Ответы сервера могут определяться такими условиями, как данные в опубликованной HTML-форме , параметры в URL-адресе , тип используемого браузера, течение времени или состояние базы данных или сервера .
Такие веб-страницы часто создаются с помощью серверных языков, таких как ASP , ColdFusion , Go , JavaScript , Perl , PHP , Ruby , Python , WebDNA и других языков, сервером поддержки , который может работать на том же оборудовании, что и веб-страница. веб-сервер. Эти серверные языки часто используют Common Gateway Interface (CGI) для создания динамических веб-страниц. Двумя заметными исключениями являются ASP.NET и JSP , которые повторно используют концепции CGI в своих API, но фактически отправляют все веб-запросы в общую виртуальную машину.
Серверные языки используются для встраивания тегов или маркеров в исходный файл веб-страницы на веб-сервере. [5] Когда пользователь на клиентском компьютере запрашивает эту веб-страницу, веб-сервер интерпретирует эти теги или маркеры для выполнения действий на сервере. Например, серверу может быть дано указание вставить информацию из базы данных или такую информацию, как текущая дата.
Динамические веб-страницы часто кэшируются, когда ожидаемых изменений мало или вообще нет, и ожидается, что страница получит значительный объем веб-трафика, что привело бы к расточительной нагрузке на сервер и замедлению загрузки страницы, если бы ему приходилось генерировать страницы на лету для каждого запроса. .
Сценарии на стороне клиента [ править ]
Сценарии на стороне клиента изменяют поведение интерфейса на определенной веб-странице в ответ на действия устройства ввода или на определенные временные события. В этом случае динамическое поведение происходит внутри презентации . Содержимое на стороне клиента создается в локальной компьютерной системе пользователя. [6]
Такие веб-страницы используют технологию представления, называемую страницами с богатым интерфейсом . Языки сценариев на стороне клиента, такие как JavaScript или ActionScript , используемые для технологий динамического HTML (DHTML) и Flash соответственно, часто используются для управления типами мультимедиа (звук, анимация, изменяющийся текст и т. д.) презентации. Сценарии на стороне клиента также позволяют использовать удаленные сценарии — метод, с помощью которого страница DHTML запрашивает дополнительную информацию с сервера, используя скрытый фрейм , XMLHttpRequests или веб-службу .
Первое публичное использование JavaScript произошло в 1995 году, когда этот язык был реализован в Netscape Navigator 2 , стандартизированном как ECMAScript два года спустя. [7]
- Пример
Содержимое на стороне клиента создается на компьютере клиента. Веб-браузер получает страницу с сервера, затем обрабатывает встроенный в страницу код (обычно написанный на JavaScript ) и отображает содержимое полученной страницы пользователю. [8]
The innerHTML
Свойство (или команда записи) может иллюстрировать генерацию динамической страницы на стороне клиента: две отдельные страницы, A и B, могут быть созданы повторно (посредством «динамического ответа на событие») как document.innerHTML = A
и document.innerHTML = B
; или «при динамической нагрузке» на document.write(A)
и document.write(B)
.
Комбинированные технологии [ править ]
Все клиентские и серверные компоненты, которые вместе создают динамическую веб-страницу, называются веб-приложением . Веб-приложения управляют взаимодействием пользователей, состоянием, безопасностью и производительностью. [9]
Ajax использует комбинацию сценариев на стороне клиента и запросов на стороне сервера. Это метод разработки веб-приложений для динамического обмена контентом, для этого он отправляет запросы на данные на сервер. Сервер возвращает запрошенные данные, которые затем обрабатываются клиентским скриптом. Этот метод может сократить время загрузки сервера, поскольку клиент не запрашивает повторное создание всей веб-страницы языковым анализатором сервера; передается только тот контент, который будет меняться. Карты Google — это пример веб-приложения, использующего методы Ajax.
Веб -клиент , например веб-браузер, может действовать как собственный сервер, получая доступ к данным со многих различных серверов, таких как Gopher, FTP, NNTP (Usenet) и HTTP, для создания страницы. HTTP поддерживает загрузку документов с клиента обратно на сервер. существует несколько HTTP-методов Для этого .
См. также [ править ]
- Глубокая паутина (поисковая индексация)
- Динамический HTML
- Система управления персонализацией
- Адаптивный веб-дизайн
- Стеки решений для обслуживания динамических веб-страниц
- Статическая веб-страница
- Система управления веб-контентом
- Система веб-шаблонов
Ссылки [ править ]
- ^ ДеГрут, Сэнди. «Руководства по предметам и курсам: Цифровой UIC: статические и динамические веб-сайты» . www.researchguides.uic.edu . Проверено 12 декабря 2023 г.
- ^ Филдинг, Рой Томас (2000). «Глава 5: Передача представительского состояния (REST)» . Архитектурные стили и проектирование сетевых архитектур программного обеспечения (доктор философии). Калифорнийский университет в Ирвайне.
- ^ Нельсон, Энн; Нельсон, Уильям Х.М. (2002). Построение электронной коммерции с помощью конструкций веб-баз данных . Эддисон Уэсли. ISBN 9780201741308 .
- ^ Бенсон, Брент В. (1999). «Яваскрипт» . Уведомления ACM SIGPLAN . 34 (4): 25–27. дои : 10.1145/312009.312023 . S2CID 10076062 . .
- ^ Татро, Кевин (2013). Программирование PHP: создание динамических веб-страниц (3-е изд.). О'Рейли. ISBN 9781449365837 .
- ^ Дойл, Барри; Лопес, Кристина Видейра (17 января 2008 г.). «Обзор технологий разработки веб-приложений». arXiv : 0801.2618 [ cs.SE ].
- ^ Окин, младший (2005). Информационная революция: Путеводитель по истории, технологиям и использованию Всемирной паутины не для чайников . Железная пресса. ISBN 9780976385745 .
- ^ «Изучение VBScript», П. Ломакс. ISBN 1-56592-247-6 . Эд. О'Рейли, 1997. сек. С13.
- ^ «Веб-приложение» . Архивировано из оригинала 22 февраля 2014 года . Проверено 24 июля 2013 г.
{{cite web}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка )
Внешние ссылки [ править ]
- Статический и динамический веб-сайт от W3.org
- Динамические веб-сайты , использующие метод управления взаимоотношениями с сайта W3.org.
- Широкий анализ динамических веб-страниц от Техасского университета в Остине.