WO2017168133A1 - Rendering a web page on a user device - Google Patents

Rendering a web page on a user device Download PDF

Info

Publication number
WO2017168133A1
WO2017168133A1 PCT/GB2017/050853 GB2017050853W WO2017168133A1 WO 2017168133 A1 WO2017168133 A1 WO 2017168133A1 GB 2017050853 W GB2017050853 W GB 2017050853W WO 2017168133 A1 WO2017168133 A1 WO 2017168133A1
Authority
WO
WIPO (PCT)
Prior art keywords
user device
server
web page
web
content
Prior art date
Application number
PCT/GB2017/050853
Other languages
French (fr)
Inventor
Mark Duncan
Original Assignee
Switch Concepts Limited
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 Switch Concepts Limited filed Critical Switch Concepts Limited
Publication of WO2017168133A1 publication Critical patent/WO2017168133A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation

Definitions

  • the present invention concerns rendering a web page on a user device.
  • the invention is particularly, but not exclusively, concerned with methods of rendering a web page provided by a web server, where the web page includes a content item provided a content server different to the web server .
  • the system 1 comprises a personal computer 11, a web server 12, and a content server 13, all of which are able to communicate with each other over the Internet.
  • the personal computer 11 has installed on it a web browser application which is able to retrieve and display "web pages". Web pages are commonly defined by means of data files in the HyperText Markup Language (HTML) .
  • HTML HyperText Markup Language
  • the web server 12 has installed on it web server software, which is able to provide (amongst other things) HTML data files that define web pages.
  • a user of the personal computer 11 can request a web page from the web server 12 using a Uniform resource Locator (URL), or "web address”, associated with the web server 12, which may for example of the form http://webserver.com/page.html. This is interpreted as a request for the HTML data file "page.html", from the web server known to the Internet as
  • URL Uniform resource Locator
  • webserver.com which in this example is the web server 12.
  • the web address may be entered directly into the web browser by the user, or for example a web page the user is currently viewing may contain a hyperlink associated with a web address, which can be clicked by the user to request the web page with that web address.
  • the personal computer 11 sends a request for the HTML data file with the desired web address to the web server 12, which in response returns the data file.
  • the HTML data file is then relayed back to the personal computer 11, and displayed by the web browser.
  • the web page 20 comprises text 21, which is explicitly contained in the underlying HTML data file page.html.
  • the web page 20 also comprises a picture 22. However, unlike the text 21, the picture 22 is not
  • HTML data file page.html contains JavaScript code which is executed by the web browser of the personal computer 11.
  • the JavaScript code causes the personal computer 11 to obtain the picture in the form of a graphics file from the content server 13. In this way, the content server 13 can select the picture that the web page 20 displays .
  • a content server 13 When a content server 13 is used to provide such advertisements, it is commonly known as an "ad server".
  • the advertisements may be provided as graphics files to be included in the web page 20, as described above.
  • the content server 13 may have a store of graphics files corresponding to different advertisements that it can provide.
  • the content server 13 receives a request for an advertisement from the personal computer 11, it returns one of the graphics files from the store, corresponding to the particular advertisement it wishes to be displayed on that occasion.
  • the content server 13 may allow other parties to bid to provide the advertisement that is shown in the web page 20.
  • the JavaScript code can perform other tasks, such as allowing the content server 13 to store and/or retrieve a third-party cookie in the web browser of the personal computer 11, and/or retrieving details about the personal computer 11.
  • a third-party cookie is a cookie that does not belong to the domain of the provider of the overall web page; so in this example, the provider of the web page 20 is the web server 12, but the cookie belongs to the domain of the content server 13.
  • a cookie belonging to the domain of the provider of the web page itself, so in this example the web server 12, is known as a first-party cookie.
  • the retrieved details may be provided to the other parties so that they can use it when deciding how to bid.
  • a disadvantage of this is that it can make the web page 20 slow to be rendered, as the JavaScript code needs to complete before the web page 20 can finish being rendered.
  • the content server 13 obtains information from the personal computer 11, passes this to third parties so that they can bid, identifies a winning bidder, received their advertisement and finally returns it to the personal computer 11, even where all these steps are done very quickly it can still lead to an
  • Another disadvantage is that it can be undesirable to include content originating from a third party in a web page, as certain web browsers can prevent such content from being stored or displayed.
  • certain web browsers can be configured not to allow third-party cookies to be stored or third-party code to be executed, and browser add-ins such as "ad-blocking" add-ins are available that prevent third-party content being displayed and third-party code being executed.
  • the present invention seeks to solve and/or mitigate some or all of the above-mentioned problems .
  • the present invention provides improved content servers and methods of providing content items.
  • the invention is particularly suitable in the context of serving advertisements for inclusion in web pages, it will be appreciated that it is applicable to situations in which other types of content items are to be provided from a set.
  • the present invention could be applied to the serving of pictures, jokes, games, quiz questions or any other content that might be included in a web page.
  • a method of rendering a web page on a user device comprising the steps of:
  • the user device sending a request for a web page to a web server
  • the web server sending a request to a content server to provide a content item for inclusion in the web page;
  • the web server returning a web page to the user device, wherein the web page includes an instruction to the user device to open a communication channel within the web page; the user device rendering the web page, including opening the communication channel;
  • the content server sending a content item for inclusion in the web page
  • the user device receiving the content item via the communication channel
  • the user device displaying the content item in the web page .
  • the user device is able to render the web page without waiting for the content item to be provided, as the content item can be provided later using the
  • the user device may be a personal computer, desk device or laptop, smartphone or any other suitable device.
  • the content item may be an advertisement, or any other suitable content .
  • the communication channel may be between the user device and the content server, in which case the content server sends the content item to the user device via the communication channel.
  • This provides a simpler setup for the web server, as after serving the web page and sending the request for a content item to the content server, the web server does not need to do anything further.
  • the communication channel is between the user device and the web server, in which case the content server sends the content item to the web server to send to the user device via the communication channel. This allows the web server to remain in control of sending the content item to the user device, which may be preferable.
  • the communication channel is in accordance with the WebSocket protocol.
  • other types of communication channel may be used.
  • communication channel may be duplex (i.e. providing
  • the request sent to the content server by the web server includes information about the user device.
  • the information can then be used by the content server when selecting an appropriate content item to send to the user device.
  • the information may include the type of user device, the type of the web browser, the geographical location of the user device, or any other suitable
  • the information about the user device is obtained using a cookie stored on the user device belonging to the domain of the web server.
  • the information may include other information not derived from the cookie.
  • the method further comprises the steps of:
  • the content server storing a cookie on the user device, wherein the cookie belongs to the domain of the web server; the web server retrieving the cookie from the user device and sending it to the content server.
  • This is particularly advantageous, as because such cookies belong to the domain of the web server, they are first-party cookies and so will not be prevented from being stored by certain web browsers and/or add-ins.
  • the method further comprises the steps of: the content server sending a request for the content item to one or more further servers;
  • one of the one or more further servers returning the content item to the content server.
  • the one or more further servers provide a bid value for the content item, and the content server selects the further server to provide the content item using the provided bid values.
  • the content server may select the further server that provides the highest-value bid, for example.
  • the request for the content item sent to the one or more further servers includes information about the user device. The information can then be used by the further servers when determine the bid value to make. This information may be obtained from cookies and/or by in other ways, as described above.
  • a web server arranged to:
  • a content server arranged to:
  • a computer program product arranged, when executed on a computing device, to provide a web server as described above.
  • a computer program product arranged, when executed on a computing device, to provide a content server as described above.
  • Figure 1 is a schematic diagram of a known system for
  • Figure 2 is a schematic diagram of a web page
  • Figure 3 is a schematic diagram of a system for rendering web pages in accordance with a first embodiment of the present invention
  • Figure 4 is a flow chart showing the operation of the
  • Figure 5 is a flow chart showing the operation of the
  • Figure 6 is a schematic diagram of a system for rendering web pages in accordance with a second
  • Figure 7 is a flow chart showing the operation of the
  • FIG. 3 A system for rendering web pages in accordance with a first embodiment of the invention is shown in Figure 3.
  • the system 101 comprises a personal computer 101, which is able to communicate with a web server 102 and a content server 103.
  • the communication between the personal computer 101 and the content server 103 is not via third-party code, but via a communication channel as indicated by the dashed line in Figure 3, and as
  • the personal computer 101 sends a request for a web page to the web server 102 (step 201), which it wishes to display in a web browser.
  • the web server 102 then sends a request for a content item for the web page 103 to the content server 103 (step 202) .
  • the web server 102 is requesting that the content server 103 provides the content item for the web page, but not that the content item is sent to the web server 102 itself.
  • the web server 102 then sends the web page (i.e. the HTML and other code that will be rendered by the web browser of the personal computer 101) to the personal computer 101 (step 203) .
  • the code of the web page includes an
  • the communication channel is configured to allow communication between the personal computer 101 and the content server 103.
  • communication channels that are in accordance with protocols other than the WebSocket protocol can be used.
  • the web server 102 renders the web page, including opening the communication channel (step 204) .
  • the content server 103 then sends a content item to the personal computer 101 using the communication channel (step 205), and the personal computer 101 displays it in the web page (step 206) .
  • the personal computer 101 is able to render the web page without waiting until the content server 103 has provided a content item, as the content item is not obtained and displayed using JavaScript code or the like, which would mean that the rendering could only be completed once the content item had been provided.
  • the cookies stored by the content server 103 belong to the domain of the web server 103, i.e. they identify themselves as having come from the domain of the web server 103. This means that they cannot be directly obtained from the personal computer 101 by the content server 103, as a web browser will only return cookies to a device that belongs to the domain of the cookie.
  • the web server 102 obtains a cookie stored on the personal computer 101 that belongs to its domain (step 301) .
  • This cookie may have been stored on the personal computer 101 by the content server 103 on a previous occasion, for example.
  • the web server 102 then sends the cookie to the content server 103 (step 302) .
  • the content server 103 is then able to use the information provided by the cookie when determining which content item to provide for display in the web page.
  • the content server 103 may also obtain further information about the personal computer 101 via the communication channel, and/or may obtain further information from the web server 102, for example information the web server 102 has obtained from the personal computer 101 via the HTTP header of the request for the web page, for example .
  • the content server 103 then stores a new cookie (or updates the existing cookie) on the personal computer 101 using the communication channel, where the new cookie also belongs to the domain of the web server 102. In this way, the cookie is available for use the next time the content server 103 is asked to provide a content item.
  • FIG. 5 A system for rendering web pages in accordance with a second embodiment of the invention is shown in Figure 5.
  • the system 121 comprises the personal computer 101 and web server 102, and in this embodiment a content server 123.
  • system 121 also comprises further servers 125, 126 and 127, all of which are in communication with the content server 123.
  • the personal computer 101, web server 102 and content server 123 communicate as described with reference to the first embodiment. However, the operation of the content server 123 when selecting a content item is now described, with reference to the flowchart of Figure 7.
  • the content server 123 derives information about the personal computer 101 as described above (step 401), for example using a cookie stored on the personal computer 101.
  • the content server 123 then sends requests for bids to provide a content item for inclusion in the web page to the further servers 125, 126 and 127 (step 402) .
  • the request includes the derived information, to allow the further servers 125, 126 and 127 the size of bid to make.
  • the further servers 125, 126 and 127 then send their bids to the content server 123 (step 403), and the content server 123 determines the winning bid (step 404) . This will usually be the highest-value bid, though in other
  • alternative and/or additional criteria may be used to determine the winning bid.
  • a lower value for a single content item may win, if it includes a promise to make the same bid for other content items.
  • Various methods of determining a content item from a set of content items including but not limited to bidding, are described in WO2015/128640 Al published 3 September 2015. The content item 123 then obtains the content item from the winning further server, and sends it to the personal computer 101 for display in the web page as described above. While the present invention has been described and illustrated with reference to particular embodiments, it will be appreciated by those of ordinary skill in the art that the invention lends itself to many different variations not specifically illustrated herein.

Abstract

A method of rendering a web page on a user device. The user device sends a request for a web page to a web server, and the web server sends a request to a content server to provide a content item for inclusion in the web page. The web server returns a web page to the user device, wherein the web page includes an instruction to the user device to open a communication channel within the web page. The user device renders the web page, including opening the communication channel. The content server sends a content item for inclusion in the web page, the user device receives the content item via the communication channel, and the user device displays the content item in the web page.

Description

Rendering a web page on a user device
Field of the Invention
The present invention concerns rendering a web page on a user device. The invention is particularly, but not exclusively, concerned with methods of rendering a web page provided by a web server, where the web page includes a content item provided a content server different to the web server .
Background of the Invention
A known system for providing web pages is shown in Figure 1. The system 1 comprises a personal computer 11, a web server 12, and a content server 13, all of which are able to communicate with each other over the Internet.
The personal computer 11 has installed on it a web browser application which is able to retrieve and display "web pages". Web pages are commonly defined by means of data files in the HyperText Markup Language (HTML) .
The web server 12 has installed on it web server software, which is able to provide (amongst other things) HTML data files that define web pages. A user of the personal computer 11 can request a web page from the web server 12 using a Uniform resource Locator (URL), or "web address", associated with the web server 12, which may for example of the form http://webserver.com/page.html. This is interpreted as a request for the HTML data file "page.html", from the web server known to the Internet as
"webserver.com", which in this example is the web server 12.
The web address may be entered directly into the web browser by the user, or for example a web page the user is currently viewing may contain a hyperlink associated with a web address, which can be clicked by the user to request the web page with that web address. To retrieve a web page, the personal computer 11 sends a request for the HTML data file with the desired web address to the web server 12, which in response returns the data file. The HTML data file is then relayed back to the personal computer 11, and displayed by the web browser.
An example web page defined by a HTML data file
page.html as seen when viewed on the web browser is shown in Figure 2. The web page 20 comprises text 21, which is explicitly contained in the underlying HTML data file page.html. The web page 20 also comprises a picture 22. However, unlike the text 21, the picture 22 is not
explicitly contained in the underlying HTML data file page.html. Rather, the HTML data file page.html contains JavaScript code which is executed by the web browser of the personal computer 11. The JavaScript code causes the personal computer 11 to obtain the picture in the form of a graphics file from the content server 13. In this way, the content server 13 can select the picture that the web page 20 displays .
When a content server 13 is used to provide such advertisements, it is commonly known as an "ad server". The advertisements may be provided as graphics files to be included in the web page 20, as described above. In this case, the content server 13 may have a store of graphics files corresponding to different advertisements that it can provide. When the content server 13 receives a request for an advertisement from the personal computer 11, it returns one of the graphics files from the store, corresponding to the particular advertisement it wishes to be displayed on that occasion. Alternatively and/or additionally, the content server 13 may allow other parties to bid to provide the advertisement that is shown in the web page 20.
As well as allowing the personal computer 11 to obtain the picture that is displayed, the JavaScript code can perform other tasks, such as allowing the content server 13 to store and/or retrieve a third-party cookie in the web browser of the personal computer 11, and/or retrieving details about the personal computer 11. (A third-party cookie is a cookie that does not belong to the domain of the provider of the overall web page; so in this example, the provider of the web page 20 is the web server 12, but the cookie belongs to the domain of the content server 13. A cookie belonging to the domain of the provider of the web page itself, so in this example the web server 12, is known as a first-party cookie.)
In the case other parties bid to have their
advertisement shown, the retrieved details (or information derived using them) may be provided to the other parties so that they can use it when deciding how to bid.
However, a disadvantage of this is that it can make the web page 20 slow to be rendered, as the JavaScript code needs to complete before the web page 20 can finish being rendered. Particularly in the case that the content server 13 obtains information from the personal computer 11, passes this to third parties so that they can bid, identifies a winning bidder, received their advertisement and finally returns it to the personal computer 11, even where all these steps are done very quickly it can still lead to an
undesirable delay.
Another disadvantage is that it can be undesirable to include content originating from a third party in a web page, as certain web browsers can prevent such content from being stored or displayed. For example, certain web browsers can be configured not to allow third-party cookies to be stored or third-party code to be executed, and browser add-ins such as "ad-blocking" add-ins are available that prevent third-party content being displayed and third-party code being executed.
The present invention seeks to solve and/or mitigate some or all of the above-mentioned problems . Alternatively and/or additionally, the present invention provides improved content servers and methods of providing content items.
While the invention is particularly suitable in the context of serving advertisements for inclusion in web pages, it will be appreciated that it is applicable to situations in which other types of content items are to be provided from a set. For example, the present invention could be applied to the serving of pictures, jokes, games, quiz questions or any other content that might be included in a web page.
Summary of the Invention
In accordance with a first aspect of the invention there is provided a method of rendering a web page on a user device, the method comprising the steps of:
the user device sending a request for a web page to a web server;
the web server sending a request to a content server to provide a content item for inclusion in the web page;
the web server returning a web page to the user device, wherein the web page includes an instruction to the user device to open a communication channel within the web page; the user device rendering the web page, including opening the communication channel;
the content server sending a content item for inclusion in the web page;
the user device receiving the content item via the communication channel;
the user device displaying the content item in the web page .
In this way, the user device is able to render the web page without waiting for the content item to be provided, as the content item can be provided later using the
communication channel. This prevents the rendering of the web page being delayed. Further, the amount of third-party code required in the web page is reduced, as the content item does not need to be requested from the content server by the web page itself, and other functionality that would usually be performed for the content server using third- party code can instead be performed between the content server and the user device using the communication channel, and/or advantageously between the content server and the web server without the user device being involved at all.
The user device may be a personal computer, desk device or laptop, smartphone or any other suitable device. The content item may be an advertisement, or any other suitable content .
The communication channel may be between the user device and the content server, in which case the content server sends the content item to the user device via the communication channel. This provides a simpler setup for the web server, as after serving the web page and sending the request for a content item to the content server, the web server does not need to do anything further.
Alternatively, the communication channel is between the user device and the web server, in which case the content server sends the content item to the web server to send to the user device via the communication channel. This allows the web server to remain in control of sending the content item to the user device, which may be preferable.
Advantageously, the communication channel is in accordance with the WebSocket protocol. However, other types of communication channel may be used. The
communication channel may be duplex (i.e. providing
communication in both directions), and further may be full- duplex (providing communication m both directions which can occur simultaneously) .
Preferably, the request sent to the content server by the web server includes information about the user device. The information can then be used by the content server when selecting an appropriate content item to send to the user device. The information may include the type of user device, the type of the web browser, the geographical location of the user device, or any other suitable
information. Advantageously, the information about the user device is obtained using a cookie stored on the user device belonging to the domain of the web server. Alternatively and/or additionally the information may include other information not derived from the cookie.
Advantageously, the method further comprises the steps of:
the content server storing a cookie on the user device, wherein the cookie belongs to the domain of the web server; the web server retrieving the cookie from the user device and sending it to the content server. This is particularly advantageous, as because such cookies belong to the domain of the web server, they are first-party cookies and so will not be prevented from being stored by certain web browsers and/or add-ins.
Preferably, the method further comprises the steps of: the content server sending a request for the content item to one or more further servers;
one of the one or more further servers returning the content item to the content server. In this case,
preferably the one or more further servers provide a bid value for the content item, and the content server selects the further server to provide the content item using the provided bid values. The content server may select the further server that provides the highest-value bid, for example. Preferably, the request for the content item sent to the one or more further servers includes information about the user device. The information can then be used by the further servers when determine the bid value to make. This information may be obtained from cookies and/or by in other ways, as described above.
In accordance with a second aspect of the invention there is provided a web server arranged to:
receive a request from a user device for a web page; generate and return a web page to the user device in accordance with any of the methods described above.
In accordance with a third aspect of the invention there is provided a content server arranged to:
receive a request from a web server for a content item for inclusion in a web page rendered on a user device;
send a content item to the user device in accordance with any of the methods described above.
In accordance with a fourth aspect of the invention there is provided a computer program product arranged, when executed on a computing device, to provide a web server as described above. In accordance with a fifth aspect of the invention there is provided a computer program product arranged, when executed on a computing device, to provide a content server as described above.
It will of course be appreciated that features
described in relation to one aspect of the present invention may be incorporated into other aspects of the present invention .
Description of the Drawings
Embodiments of the present invention will now be described by way of example only with reference to the accompanying schematic drawings of which:
Figure 1 is a schematic diagram of a known system for
rendering web pages;
Figure 2 is a schematic diagram of a web page;
Figure 3 is a schematic diagram of a system for rendering web pages in accordance with a first embodiment of the present invention;
Figure 4 is a flow chart showing the operation of the
system of Figure 3 when rendering a web page; Figure 5 is a flow chart showing the operation of the
system of Figure 3 when retrieving and storing a cookie on the personal computer; Figure 6 is a schematic diagram of a system for rendering web pages in accordance with a second
embodiment of the present invention; and
Figure 7 is a flow chart showing the operation of the
system of Figure 6 when obtaining a content item to display in the web page.
Detailed Description
A system for rendering web pages in accordance with a first embodiment of the invention is shown in Figure 3. As in the known system, in the system 101 comprises a personal computer 101, which is able to communicate with a web server 102 and a content server 103. However, the communication between the personal computer 101 and the content server 103 is not via third-party code, but via a communication channel as indicated by the dashed line in Figure 3, and as
described in more detail below.
The operation of the system is now described with reference to Figure 4. First, the personal computer 101 sends a request for a web page to the web server 102 (step 201), which it wishes to display in a web browser. The web server 102 then sends a request for a content item for the web page 103 to the content server 103 (step 202) . However, importantly the web server 102 is requesting that the content server 103 provides the content item for the web page, but not that the content item is sent to the web server 102 itself. The web server 102 then sends the web page (i.e. the HTML and other code that will be rendered by the web browser of the personal computer 101) to the personal computer 101 (step 203) . The code of the web page includes an
instruction that a WebSocket communication channel is opened in the web page. The communication channel is configured to allow communication between the personal computer 101 and the content server 103. In alternative embodiments, communication channels that are in accordance with protocols other than the WebSocket protocol can be used.
The web server 102 renders the web page, including opening the communication channel (step 204) . The content server 103 then sends a content item to the personal computer 101 using the communication channel (step 205), and the personal computer 101 displays it in the web page (step 206) .
In this way, the personal computer 101 is able to render the web page without waiting until the content server 103 has provided a content item, as the content item is not obtained and displayed using JavaScript code or the like, which would mean that the rendering could only be completed once the content item had been provided.
The operation of an embodiment of the invention in which the content server 103 stores cookies on the personal computer 101 is now described. In this embodiment, the cookies stored by the content server 103 belong to the domain of the web server 103, i.e. they identify themselves as having come from the domain of the web server 103. This means that they cannot be directly obtained from the personal computer 101 by the content server 103, as a web browser will only return cookies to a device that belongs to the domain of the cookie.
First, the web server 102 obtains a cookie stored on the personal computer 101 that belongs to its domain (step 301) . This cookie may have been stored on the personal computer 101 by the content server 103 on a previous occasion, for example. The web server 102 then sends the cookie to the content server 103 (step 302) . The content server 103 is then able to use the information provided by the cookie when determining which content item to provide for display in the web page. The content server 103 may also obtain further information about the personal computer 101 via the communication channel, and/or may obtain further information from the web server 102, for example information the web server 102 has obtained from the personal computer 101 via the HTTP header of the request for the web page, for example .
The content server 103 then stores a new cookie (or updates the existing cookie) on the personal computer 101 using the communication channel, where the new cookie also belongs to the domain of the web server 102. In this way, the cookie is available for use the next time the content server 103 is asked to provide a content item.
A system for rendering web pages in accordance with a second embodiment of the invention is shown in Figure 5. As in the first embodiment system, the system 121 comprises the personal computer 101 and web server 102, and in this embodiment a content server 123.
However, in the present embodiment the system 121 also comprises further servers 125, 126 and 127, all of which are in communication with the content server 123.
The personal computer 101, web server 102 and content server 123 communicate as described with reference to the first embodiment. However, the operation of the content server 123 when selecting a content item is now described, with reference to the flowchart of Figure 7.
First, the content server 123 derives information about the personal computer 101 as described above (step 401), for example using a cookie stored on the personal computer 101. The content server 123 then sends requests for bids to provide a content item for inclusion in the web page to the further servers 125, 126 and 127 (step 402) . The request includes the derived information, to allow the further servers 125, 126 and 127 the size of bid to make.
The further servers 125, 126 and 127 then send their bids to the content server 123 (step 403), and the content server 123 determines the winning bid (step 404) . This will usually be the highest-value bid, though in other
embodiments alternative and/or additional criteria may be used to determine the winning bid. (For example, a lower value for a single content item may win, if it includes a promise to make the same bid for other content items.) Various methods of determining a content item from a set of content items, including but not limited to bidding, are described in WO2015/128640 Al published 3 September 2015. The content item 123 then obtains the content item from the winning further server, and sends it to the personal computer 101 for display in the web page as described above. While the present invention has been described and illustrated with reference to particular embodiments, it will be appreciated by those of ordinary skill in the art that the invention lends itself to many different variations not specifically illustrated herein.

Claims

Claims
1. A method of rendering a web page on a user device, the method comprising the steps of:
the user device sending a request for a web page to a web server;
the web server sending a request to a content server to provide a content item for inclusion in the web page;
the web server returning a web page to the user device, wherein the web page includes an instruction to the user device to open a communication channel within the web page; the user device rendering the web page, including opening the communication channel;
the content server sending a content item for inclusion in the web page;
the user device receiving the content item via the communication channel;
the user device displaying the content item in the web page .
2. A method as claimed in claim 1, wherein the communication channel is between the user device and the content server, and the content server sends the content item to the user device via the communication channel.
3. A method as claimed in claim 1, wherein the communication channel is between the user device and the web server, and the content server sends the content item to the web server to send to the user device via the communication channel.
4. A method as claimed in any of claims 1 to 3, wherein the communication channel is in accordance with the WebSocket protocol .
5. A method as claimed in any preceding claim, wherein the request sent to the content server by the web server includes information about the user device.
6. A method as claimed in claim 5, wherein the information about the user device is obtained from a cookie stored on the user device belonging to the domain of the web server.
7. A method as claimed in any preceding claim, further comprising the steps of:
the content server storing a cookie on the user device, wherein the cookie belongs to the domain of the web server; the web server retrieving the cookie from the user device and sending it to the content server.
8. A method as claimed in any preceding claim, further comprising the steps of:
the content server sending a request for the content item to one or more further servers;
one of the one or more further servers returning the content item to the content server.
9. A method as claimed in claim 8, wherein the one or more further servers provide a bid value for the content item, and the content server selects the further server to provide the content item using the provided bid values.
10. A method as claimed in claim 8 or 9, wherein the request for the content item sent to the one or more further servers includes information about the user device.
11. A web server arranged to:
receive a request from a user device for a web page; generate and return a web page to the user device in accordance with the methods of any of claims 1 to 10.
12. A content server arranged to:
receive a request from a web server for a content item for inclusion in a web page rendered on a user device;
send a content item to the user device in accordance with the methods of any of claims 1 to 10.
13. A computer program product arranged, when executed on a computing device, to provide a web server as claimed in claim 11.
14. A computer program product arranged, when executed on computing device, to provide a content server as claimed claim 12.
PCT/GB2017/050853 2016-04-01 2017-03-27 Rendering a web page on a user device WO2017168133A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1605553.5 2016-04-01
GB201605553 2016-04-01

Publications (1)

Publication Number Publication Date
WO2017168133A1 true WO2017168133A1 (en) 2017-10-05

Family

ID=58464597

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2017/050853 WO2017168133A1 (en) 2016-04-01 2017-03-27 Rendering a web page on a user device

Country Status (1)

Country Link
WO (1) WO2017168133A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109960552A (en) * 2017-12-26 2019-07-02 浙江宇视科技有限公司 A kind of web interface differentiation rendering method and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143499A1 (en) * 2000-11-01 2004-07-22 Karl-Ludwig Dietsch System and method for delivering plural advertisement information on a data network
US20090132359A1 (en) * 2007-11-20 2009-05-21 Microsoft Corporation Advertisement-Controlled Web Page Customization
US20090204886A1 (en) * 2005-10-14 2009-08-13 Sichun Xu Asynchronously rendering dynamically created content across multiple network domains
US20110307825A1 (en) * 2010-06-08 2011-12-15 Anchorfree, Inc. System and method for creation of advertising space independent from web site design
WO2015128640A1 (en) 2014-02-25 2015-09-03 Switch Concepts Limited Content servers, and methods of transmitting content items

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143499A1 (en) * 2000-11-01 2004-07-22 Karl-Ludwig Dietsch System and method for delivering plural advertisement information on a data network
US20090204886A1 (en) * 2005-10-14 2009-08-13 Sichun Xu Asynchronously rendering dynamically created content across multiple network domains
US20090132359A1 (en) * 2007-11-20 2009-05-21 Microsoft Corporation Advertisement-Controlled Web Page Customization
US20110307825A1 (en) * 2010-06-08 2011-12-15 Anchorfree, Inc. System and method for creation of advertising space independent from web site design
WO2015128640A1 (en) 2014-02-25 2015-09-03 Switch Concepts Limited Content servers, and methods of transmitting content items

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109960552A (en) * 2017-12-26 2019-07-02 浙江宇视科技有限公司 A kind of web interface differentiation rendering method and device

Similar Documents

Publication Publication Date Title
US10911554B2 (en) Method and system for tracking web link usage
US11375044B2 (en) Custom digital components
US9655158B2 (en) Overloaded communication session
US8555158B2 (en) Dynamically updating webpage style
JP6351611B2 (en) Distributing and displaying page previews during page acquisition events
US20100324999A1 (en) Advertisement proxy service
US20140143644A1 (en) Web browser page transition acceleration
US9348939B2 (en) Web site sectioning for mobile web browser usability
US6157933A (en) Method and apparatus for loading multiple animated images on a web-page with limited network throughput
US11893604B2 (en) Server-side content management
US10666709B2 (en) Dynamic media transformation service in a CDN
TW200822649A (en) Estimation of initial dynamic rendering control data
AU2010254287B2 (en) Automated content submission to a share site
US20130036193A1 (en) System and method for generating dynamic image sprites
US8874654B2 (en) System for processing requests to portlets
JP6372868B2 (en) Reward distribution method, reward distribution system and terminal
US8615431B1 (en) Network content message placement management
WO2017168133A1 (en) Rendering a web page on a user device
KR20210007940A (en) Information processing device, information processing method and program
US7099929B1 (en) System and method for transferring information in a hypertext transfer protocol based system
US20230065501A1 (en) Interaction tracking controls
WO2015128640A1 (en) Content servers, and methods of transmitting content items
CN109547856B (en) Method and apparatus for generating information
WO2017051916A1 (en) Notification method and notification server for sending push notifications to portable terminal
WO2015128642A1 (en) Computing devices and servers for making and receiving requests for user data

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17715267

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17715267

Country of ref document: EP

Kind code of ref document: A1