RU2530269C1 - Способ вставки сообщений в электронные документы внедренным клиентским скриптом - Google Patents

Способ вставки сообщений в электронные документы внедренным клиентским скриптом Download PDF

Info

Publication number
RU2530269C1
RU2530269C1 RU2013127301/08A RU2013127301A RU2530269C1 RU 2530269 C1 RU2530269 C1 RU 2530269C1 RU 2013127301/08 A RU2013127301/08 A RU 2013127301/08A RU 2013127301 A RU2013127301 A RU 2013127301A RU 2530269 C1 RU2530269 C1 RU 2530269C1
Authority
RU
Russia
Prior art keywords
server
message
script
document
client device
Prior art date
Application number
RU2013127301/08A
Other languages
English (en)
Inventor
Андрей Александрович Передереев
Игорь Вячеславович Бетин
Original Assignee
Общество с ограниченной ответственностью "Новая Рекламная Механика"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "Новая Рекламная Механика" filed Critical Общество с ограниченной ответственностью "Новая Рекламная Механика"
Priority to RU2013127301/08A priority Critical patent/RU2530269C1/ru
Application granted granted Critical
Publication of RU2530269C1 publication Critical patent/RU2530269C1/ru

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

Изобретение относится к компьютерным системам адаптации контента. Техническим результатом является обеспечение возможности переноса вставки сообщения с веб-сервера или сервера-посредника на клиентское устройство для получения данных о возможностях клиентского устройства и учета их при вставке сообщения таким образом, чтобы отображаемая информация не теряла изначальную структуру, внешний вид и читабельность. Заявлен способ вставки сообщений в электронные документы внедренным клиентским скриптом, осуществляющий изменение содержимого в качестве ответа на первый веб-запрос и применение адаптации содержимого. Заявленный способ характеризуется тем, что функции промежуточной сетевой сущности разделены между сервером адаптации контента, сервером данных и двумя клиентскими скриптами с сохранением изменения содержимого в качестве ответа на первый веб-запрос и применением адаптации содержимого. 1 ил.

Description

Настоящее изобретение относится к рекламе и информационным сообщениям в компьютерных вычислительных сетях таких, как Интернет, а также в программах, использующих эти сети как среду обмена данными.
В настоящее время существует множество систем адаптации содержимого (content adaptation). Эти системы позволяют изменять проходящий через веб-сервер или сервер-посредник данные по заданным правилам. Описаны и реализованы протоколы адаптации содержимого ICAP (RFC 3507, http://tools.ietf.org/html/rfc3507) и еСАР (http://www.e-http://cap.org), реализации их включают в себя программные продукты с открытым исходным кодом, такие как squid (http://www.squid-cache.org/), и проприетарные продукты, такие как Traffic Spicer (http://spicer.measurement-factorv.com/).
Адаптация содержимого позволяет и широко используется для вставки сообщений в веб-страницы и иные документы, получаемые из локальных сетей и сети Интернет.
Одна из сложностей во вставке сообщений при адаптации содержимого возникает из-за многообразия протоколов и форматов передачи данных в сети Интернет, большинство из которых поддерживаются существующими браузерами - это, например, различные версии формата HTML, xHTML, JSON. При этом способ отображения содержимого веб-документа может отличаться от браузера к браузеру, не говоря уже о размерах экрана того или иного устройства, используемого конечным клиентом для просмотра.
Поэтому вставка сообщения таким образом, чтобы оно не нарушало структуру документа и корректно выводилось на конечном устройстве, остается трудоемкой задачей, требует от разработчика учесть особенности форматов и протоколов, что в свою очередь повышает сложность правил и модулей адаптации, отчего возрастает нагрузка на серверы, на которых эта адаптация происходит.
При этом постоянно растет вычислительная мощность клиентских мобильных и компьютерных устройств, сложность веб-браузеров, большинство из которых поддерживают тот или иной язык клиентских скриптов. Такие языки клиентских скриптов, как ЕСМА, JavaScript, VBScript и др. позволяют работать со структурированным представлением документов, изменять их содержимое, и даже оперировать с другими скриптами в документах.
В качестве ближайшего аналога заявляемого изобретения выбран патент США 7533144 «Способ обеспечения веб-страницы дополнительным содержимым, вставленным на платформе промежуточного сетевого объекта (INE)», описывающий способ вставки в веб-страницу контента с изменением содержимого в качестве ответа на первый веб-запрос и применением адаптации содержимого.
Недостатками способа, описанного в аналоге, являются:
- описанная платформа промежуточной сетевой сущности (INE platform) размещается либо на сервере адаптации контента, что ведет к потерям в производительности, либо на клиентском устройстве, что требует установки дополнительных приложений;
- размещение дополнительного содержимого в случае веб-страницы ограничено отдельным фреймом, что приводит к ограничению внешнего вида и размещения вставленного содержимого (только прямоугольная область). Также фрейм имеет отдельную сессию в браузере, и не имеет доступа к информации о родительском фрейме (т.е. модифицируемом содержимом).
Технический результат, на достижение которого направлено заявляемое изобретение, заключается в возможности перенести вставку сообщения с веб-сервера или сервера-посредника на клиентское устройство для получения данных о возможностях клиентского устройства и учесть их при вставке сообщения таким образом, чтобы отображаемая информация не теряла изначальную структуру, внешний вид и читабельность.
Технический результат достигается тем, что функции промежуточной сетевой сущности разделены между сервером адаптации контента, сервером данных и двумя клиентскими скриптами с сохранением изменения содержимого в качестве ответа на первый веб-запрос и применением адаптации содержимого. Способ, описанный в данном изобретении, существенно сокращает объем данных, необходимый для вставки, а доставка скрипта для размещения и вставляемого сообщения в два этапа (J2 и М по обозначениям ниже) позволяют реализовывать более гибкие сценарии размещения сообщения в электронном документе.
Заявляемый способ реализуется с помощью серверов, изображенных на фигуре:
- Saк - сервер адаптации контента 1;
- Sв - веб-сервер 2;
- Sк - клиентское устройство (КУ) 3;
- Scкp - сервер скриптов 4;
- Sд - сервер данных 5.
Заявляемое изобретение может быть применено в любых сетях с любым типом документов данных, отображение которых предусматривает выполнение клиентских скриптов. Примеры в данном описании для наглядности и понятности будут приведены для случая сети с транспортным протоколом передачи гипертекста HTTP версии 1.1, веб-страницами в качестве электронных документов, гипертекстовым форматом данных HTML 4.1 и языком клиентских скриптов Javascript.
Сервер адаптации контента Saк 1 включен во взаимодействие между Sв 2 и Sк 3. Это включение может быть реализовано, например, как прозрачный прокси-сервер, причем физически Saк 1 и Sв 2 могут быть реализованы на одном устройстве или на разных.
Клиентское устройство Sк 3 отправляет в сеть запрос Q1 на получение ответа от веб-сервера Sв. Saк пропускает запрос Q1 в неизменном виде к серверу Sв 2. Веб-сервер Sв 2 формирует ответ R1.1, который может содержать в себе документ D1.1, в который необходимо вставить сообщение М (например, информационного или рекламного характера) с сервера данных 5. Ответ R1.1 может также содержать не документ, а двоичные данные, например изображение, аудио- или видеопоток.
Ответ R1.1 веб-сервера 2 приходит в Saк 1. Saк анализирует R1.1 на предмет наличия документа D1.1 и пригодности D1.1 к вставке клиентских скриптов.
Если R1.1 не содержит пригодного для вставки клиентского скрипта документа D1.1, R1.1 возвращается клиентскому устройству в неизмененном виде.
Если R1.1 содержит D1.1 таковым, что вставка клиентских скриптов в D1.1 допустима, то Saк 1 вставляет клиентский скрипт - скрипт подгрузки J1 - в тело документа D1.1. Скрипт подгрузки J1 представляет собой максимально компактный скрипт, который содержит в себе конфигурацию данного сервера Saк 1.
Saк 1 осуществляет вставку J1 в допустимое место D1.1. В случае с форматом данных HTML, например, таким местом будет начало или конец содержимого секции, отмеченной тегами<head>…</head>.
Далее Saк 1 отправляет измененный ответ R1.2, содержащий измененный документ D1.2 (представляющий из себя документ D1.1 с внедренным J1), клиентскому устройству Sк 3. На КУ при обработке полученного измененного ответа R1.2, выполняется среди прочих клиентских скриптов из D1.2 и скрипт подгрузки J1.
J1 при выполнении своем на клиентском устройстве 3 формирует запрос Q2 к серверу скриптов Scкp 4 на получение основного скрипта J2. Saк 1 пропускает Q2 и J2 без изменений.
Сервер скриптов представляет собой веб-сервер, на котором хранится J2, он может быть расположен на отдельном сервере, доступном клиенту по сети Интернет, может быть расположен на одном сервере с сервером данных или на одном сервере с сервером адаптации контента.
При выполнении клиентского скрипта J1 последовательно выполняется следующее:
- J2 анализирует содержащуюся в J1 конфигурацию сервера адаптации контента Saк, что возможно в силу того, что J1 и J2 выполняются в одной и той же среде и в контексте измененного документа D1.2. J1 передает данные в J2 путем их помещения в любое доступное J2 хранилище данных, способ передачи в которое поддерживается средой исполнения клиентских скриптов пользовательского устройства, например локальное хранилище браузера или определение глобальных переменных;
- по результатам анализа конфигурации сервера адаптации контента Saк 1, содержащейся в J1, J2 принимает решение о возможности или невозможности вставки сообщения в измененный документ D1.2. В случае невозможности вставки алгоритм прерывается и вставка не происходит. В противном случае формируется конфигурация для получения сообщения, анализ продолжается на следующем шаге;
- J2 анализирует измененный документ D1.2 из ответа R1.2, его структуру и важные для вставки сообщения особенности, включая такие, как расположение элементов в измененном документе D1.2, зависимости отображения элементов от связанных с измененным документом D1.2 клиентских скриптов, общий размер отображения измененного документа D1.2, порядок загрузки и отображения элементов;
- в результате анализа J2 принимает решение о возможности или невозможности вставки сообщения М в измененный документ D1.2. В случае невозможности вставки алгоритм прерывается и вставка не происходит. В противном случае анализ продолжается на следующем шаге;
- J2 анализирует среду, в которой он выполняется на клиентском устройстве Sк 3 (в случае с HTML это веб-браузер), возможности и особенности этой среды, включая такие, как поддерживаемые операции скрипта, размер экрана, средства ввода;
- в результате анализа J2 принимает решение о возможности или невозможности вставки сообщения М и месте вставки. В случае невозможности вставки алгоритм прерывается и вставка не происходит;
- если по результатам анализа вставка возможна, J2 формирует запрос Q3 к серверу данных Sд 4. Сервер данных Sд 4, с учетом полученных в Q3 данных о среде и измененном документе D1.2 из измененного ответа R1.2, а также на основе алгоритма выдачи сообщений, возвращает ответ R3 сервера данных, содержащий сообщение М (рекламное или информационное), клиентскому устройству. Сервер адаптации контента Saк 1 пропускает Q3 и R3 в неизмененном виде.
Обработку ответа R3 сервера данных, содержащего сообщение М для вставки в электронный документ, осуществляет также скрипт J2. Он производит манипуляции над содержимым измененного документа D1.2 таким образом, чтобы выделить место для сообщения М (используя данные анализа на предыдущих шагах), помещает в измененный документ D1.2 новый элемент для отображения сообщения М из R3 или изменяет один из существующих элементов таким образом, чтобы тот отображал сообщение М, используя при этом данные, полученные при анализе возможности вставки.

Claims (1)

  1. Способ вставки сообщений в электронные документы внедренным клиентским скриптом, осуществляющий изменение содержимого в качестве ответа на первый веб-запрос и применение адаптации содержимого, отличающийся тем, что клиентское устройство отправляет в сеть запрос на получение ответа от веб-сервера, сервер адаптации контента, включенный во взаимодействие между веб-сервером и клиентским устройством, пропускает его в неизменном виде, веб-сервер формирует ответ, который может содержать документ, в который необходимо вставить сообщение, ответ приходит на сервер адаптации контента, анализируется последним на предмет наличия документа и его пригодности к вставке клиентских скриптов, при допустимости вставки сервер адаптации контента осуществляет вставку скрипта подгрузки в допустимое место документа и отправляет измененный ответ, содержащий измененный документ с внедренным скриптом подгрузки, клиентскому устройству, на котором последний выполняется и формирует запрос серверу скриптов на получение основного скрипта, принимающего решение о возможности вставки сообщения в измененный документ по результатам анализов конфигурации сервера адаптации контента, измененного документа, его структуры, важных для вставки сообщения особенностей, таких как расположение элементов, зависимости отображения элементов от связанных с измененным документом клиентских скриптов, общий размер отображения, порядок загрузки и отображения элементов, а также возможности и особенности среды, в которой он выполняется на клиентском устройстве, включая такие, как поддерживаемые операции скрипта, размер экрана, средства ввода, при допустимости вставки сообщения основной скрипт формирует запрос серверу данных, в ответ на который сервер данных возвращает ответ сервера данных, содержащий сообщение для вставки, клиентскому устройству, при этом сервер адаптации контента пропускает запрос серверу скриптов, основной скрипт к клиентскому устройству, запрос серверу данных и ответ сервера данных клиентскому устройству в неизмененном виде, а основной скрипт производит манипуляции над содержимым измененного документа таким образом, чтобы выделить место для сообщения, помещает в него новый элемент для отображения сообщения или изменяет один из существующих элементов таким образом, чтобы тот отображал сообщение, используя при этом данные, полученные при анализе возможности вставки, при невозможности вставки клиентских скриптов в документ или сообщения по результату любой аналитической операции основного скрипта вставка сообщения не происходит.
RU2013127301/08A 2013-06-14 2013-06-14 Способ вставки сообщений в электронные документы внедренным клиентским скриптом RU2530269C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2013127301/08A RU2530269C1 (ru) 2013-06-14 2013-06-14 Способ вставки сообщений в электронные документы внедренным клиентским скриптом

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2013127301/08A RU2530269C1 (ru) 2013-06-14 2013-06-14 Способ вставки сообщений в электронные документы внедренным клиентским скриптом

Publications (1)

Publication Number Publication Date
RU2530269C1 true RU2530269C1 (ru) 2014-10-10

Family

ID=53381599

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2013127301/08A RU2530269C1 (ru) 2013-06-14 2013-06-14 Способ вставки сообщений в электронные документы внедренным клиентским скриптом

Country Status (1)

Country Link
RU (1) RU2530269C1 (ru)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2280274C2 (ru) * 2002-05-17 2006-07-20 Сони Корпорейшн Устройство обработки информации, способ обработки информации, устройство распределения содержания, способ распределения содержания и компьютерная программа
EP1835768A1 (en) * 2004-12-21 2007-09-19 ZTE Corporation Adaptation method of transferring multimedia message between terminals
US7546602B2 (en) * 2001-07-10 2009-06-09 Microsoft Corporation Application program interface for network software platform
RU2405267C2 (ru) * 2007-04-28 2010-11-27 Хуавэй Текнолоджиз Ко., Лтд. Способ, устройство и система выбора услуг и клиентский сервер приложений
RU2010146260A (ru) * 2008-08-14 2012-05-20 Зти Корпорейшн (Cn) Способ реализации адаптации контента и сервер для адаптации контента

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7546602B2 (en) * 2001-07-10 2009-06-09 Microsoft Corporation Application program interface for network software platform
RU2280274C2 (ru) * 2002-05-17 2006-07-20 Сони Корпорейшн Устройство обработки информации, способ обработки информации, устройство распределения содержания, способ распределения содержания и компьютерная программа
EP1835768A1 (en) * 2004-12-21 2007-09-19 ZTE Corporation Adaptation method of transferring multimedia message between terminals
RU2405267C2 (ru) * 2007-04-28 2010-11-27 Хуавэй Текнолоджиз Ко., Лтд. Способ, устройство и система выбора услуг и клиентский сервер приложений
RU2010146260A (ru) * 2008-08-14 2012-05-20 Зти Корпорейшн (Cn) Способ реализации адаптации контента и сервер для адаптации контента

Similar Documents

Publication Publication Date Title
US8156419B2 (en) Intelligent preloads of views and asynchronous loading of models using the MVC design pattern
CN108984714B (zh) 页面渲染方法、装置、电子设备及计算机可读介质
US20190146616A1 (en) Systems And Methods For Remote Tracking And Replay Of User Interaction With A Webpage
EP2409248B1 (en) Web translation with display replacement
CN100462964C (zh) 一种网页数据的更新显示方法
CA2640025C (en) Methods and devices for post processing rendered web pages and handling requests of post processed web pages
WO2016173200A1 (zh) 用于检测恶意网址的方法和***
US11842142B2 (en) Systems and methods for co-browsing
US20170272499A1 (en) Method and device for loading webpage
US20120101907A1 (en) Securing Expandable Display Advertisements in a Display Advertising Environment
US20090271690A1 (en) Handling cross-domain web service calls
US8645916B2 (en) Crunching dynamically generated script files
US20120246017A1 (en) Distributing content
US20170199850A1 (en) Method and system to decrease page load time by leveraging network latency
US8689099B1 (en) Cross-domain communication
US20090085921A1 (en) Populate Web-Based Content Based on Space Availability
US20140201616A1 (en) Cross-platform embeddable media player
KR20190094235A (ko) 커스텀 디지털 컴포넌트
TWI435226B (zh) A method of reading a system, a terminal, an image server, a computer program product, a terminal, and an image server
US20030229850A1 (en) Web browser
US20090300103A1 (en) Storage medium recording a program for rewriting uniform resource locator information
Lonka Improving the initial rendering performance of react applications through contemporary rendering approaches
RU2530269C1 (ru) Способ вставки сообщений в электронные документы внедренным клиентским скриптом
CN111859211A (zh) 网页离线访问方法、装置、终端及存储介质
CN109344344A (zh) 网页客户端的标识方法、服务器及计算机可读存储介质

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20150615