WO2015128642A1 - Computing devices and servers for making and receiving requests for user data - Google Patents

Computing devices and servers for making and receiving requests for user data Download PDF

Info

Publication number
WO2015128642A1
WO2015128642A1 PCT/GB2015/050543 GB2015050543W WO2015128642A1 WO 2015128642 A1 WO2015128642 A1 WO 2015128642A1 GB 2015050543 W GB2015050543 W GB 2015050543W WO 2015128642 A1 WO2015128642 A1 WO 2015128642A1
Authority
WO
WIPO (PCT)
Prior art keywords
user data
key
request
computing device
server
Prior art date
Application number
PCT/GB2015/050543
Other languages
French (fr)
Inventor
Tom Barnett
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
Priority to GB1616221.6A priority Critical patent/GB2545294A/en
Publication of WO2015128642A1 publication Critical patent/WO2015128642A1/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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Definitions

  • the present invention concerns computing devices and servers for making and receiving requests for user data.
  • the invention is particularly, but not exclusively, appropriate for use with "ad servers", that is a servers that provide advertisements for inclusion in web pages.
  • the system 1 comprises a personal computer 11, a web server 12, and a content server 13, all of which are able to communicate over the internet 10.
  • the personal computer 11 has installed on it a web browser application which is able to retrieve and display "web pages" obtained over the internet 10.
  • 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 10 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 internet 10; the
  • internet 10 then relays that request to the web server 12, which in response returns the data file.
  • the HTML data file is then relayed by the internet 10 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 a reference to a graphics file that is used to generate the picture.
  • the reference may for example be of the form
  • the web browser makes a further request to the internet 10 for the required graphics file picture.jpg at address contentserver.com; the internet 10 relays the request to the content server 13, which returns the graphics file; the graphics file is then relayed by the internet 10 back to the personal computer 11, which displays it as part of the web page 20.
  • a graphics file In addition or alternatively to a graphics file, other content may be provided.
  • a web address may be provided along with the graphics file, and the web page 20 arranged to go to that web address when the picture 22 is clicked by the user.
  • text to be displayed, or code to be executed might be provided along with the graphics file, or an "applet" file might be provided instead of a graphics file, to give just some examples.
  • a web page obtained from a first source in the above example the web server 12, may include content from a second source, in the above example the content server 13.
  • a second source in the above example the content server 13.
  • a common application is the supply of advertisements in web pages, whereby the provider of the web page 20 allows advertisements to be displayed as part of their web page, usually in return for payment .
  • 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 will have a store of graphics files corresponding to different advertisements that it can provide.
  • the content server 13 receives a request for an advertisement, it returns one of the graphics files from the store, corresponding to the particular advertisement it wishes to be displayed on that occasion.
  • the website can store in a cookie containing an identifier for the user in a cookie on the personal computer.
  • the website can request the contents of the cookie so as to identify the user, meaning user does not need to log in again.
  • Cookies are used in various other ways to enhance website browsing experience, for example by storing details of items selected for purchase in a "web basket" on a shopping website.
  • Cookies are also used by third parties, such as content providers, to identify users who receive adverts so that information about the user can be determined (browsing habits and the like) .
  • the use of cookies can be disabled, but this can lead to websites viewed by the user having reduced functionality, which is undesirable. It would be advantageous for users to have greater control over the user data they provide.
  • the present invention seeks to solve and/or mitigate the above-mentioned problems.
  • the present invention provides improved computing devices and servers for making and receiving requests for user data.
  • 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 computing device comprising a web browser arranged to receive and store user data, wherein: the computing device is arranged to receive a request for a key for requesting user data, and in response to generate and return a key; and
  • the web browser is arranged to receive a request for user data including a key, and in response to determine whether the key is valid, and in the case the key is valid return the requested user data.
  • the computing device can decide who it wants to send a key in response to a request. This allows the computing device to control who is sent user data, rather than simply not storing and/or sending any user data at all.
  • the computing device is a personal
  • the web browser receives the request for the key and generates and returns the key.
  • the user data is stored in a browser cookie.
  • the user data may be stored in a flash cookie or other suitable stored user data record. It will be appreciated that the invention is applicable to any suitable type of user data record or store from in which user data can be stored and returned to a third party.
  • the user data may be associated with the party making the request.
  • the request may be for user data stored in a cookie associated with the website making request (i.e. the website's "own" cookie) .
  • the user data may include user data not associated with the party making the request.
  • the user data may include user identification used by other websites.
  • the user data may include other data stored by the user, such as biographical details, shopping preferences, or other preferences set by the user identifying subjects of interest to them.
  • the other data need not be stored in cookies or the like.
  • the computing device is arranged to
  • the computing device is arranged to determine that the key is valid if it has not previously been included in a request for user data.
  • the key is a "one-time" key.
  • the computing device is further
  • the user data may have been provided to be stored in a cookie, but is instead stored in a separate database.
  • the computing device is further arranged to obtain user data stored in user data records, store the obtained user data in a data store distinct from the user data record, and delete the user data from the user data record .
  • a server arranged to communicate via a web interface with a computing device as described above, wherein :
  • the server is arranged to send a request for a key for requesting user data to the computing device, and to receive a key returned in response;
  • the server is arranged to send a request for user data including the key to the computing device, and to receive user data returned in response. In this way, the server can obtain user data stored on a computing device as described above.
  • the server is arranged to send the request for the key to the computing device in response to a request from the computing device for a content item.
  • the server is further arranged to determine a content provider for the content item, and to provide a content item from the content provider in response to the request. In this way, the server can select the content provider to provide the content item.
  • the server is further arranged to determine one or more
  • the server may target the request to the content provider, using the determined properties obtained by analysing the request.
  • the server may further use information it has stored about the user.
  • the determined properties may be obtained by analysing the HTTP header of the request, the IP address of the request, or any other information available for the request.
  • the server may be arranged to send a request for the content item to the content provider. This allows the content provider to provide the request, and in addition advantageously allows the content provider to decide whether they wish to provide a content item for the request or not. Alternati ely, the server may have a store of content items for different content providers.
  • a computer program product arranged, when executed on a computing device, to provide any of the computing devices described above.
  • a computer program product arranged, when executed on a server, to provide any of the servers
  • 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 personal computer in accordance with an 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 flow chart showing the operation of the
  • FIG. 7 is a schematic diagram of a server in accordance with an embodiment of the present invention.
  • Figures 8a and 8b are a flow chart showing the operation of the server in response to a request for a content item.
  • a personal computer in accordance with an embodiment of the present invention is shown schematically in Figure 3.
  • the personal computer 100 connects to the internet 10 via a web interface 101.
  • a web browser 102 allows a user to view web pages.
  • the web browser 102 comprises a plugin.
  • the personal computer 100 further comprises a key store 103 and a user data store 104, accessed by the plugin, the use of which is explained below.
  • Figure 4 is a flow chart showing the operation of the plugin of the web browser 102 in response to user data being received for storing in a cookie.
  • the web browser 102 receives user data to store in a cookie, for example after logging into a website (step 201) .
  • the user data is stored in the user data store 104 (step 202) .
  • the web browser 102 may store the user data in a cookie in the conventional manner, but the storing of the data may trigger the plugin to extract the user data from the cookie and store it in the user data store, and then delete it from the cookie .
  • Figure 5 is a flow chart showing the operation of the plugin of the web browser 102 in response to a request for a key.
  • the web browser 102 receives a request for a key via the web interface 101 (step 301) .
  • the web browser 102 then generates a key (step 302) .
  • the key is a unique new key, which can be generated in accordance with any known unique key generation method.
  • a copy of the key is then stored in the key store 103 (step 303) , and also sent to the requester (step 304) .
  • Figure 6 is a flow chart showing the operation of the plugin of the web browser 102 in response to a request for user data via the web interface 101.
  • the web browser 102 receives a request for user data, including a key (step 401) .
  • the web browser 102 checks if the key is in the key store 103 (step 402) . If not, the web browser refuses the request for user data (step 403) . If the key is in the key store 103, the web browser 102 obtains the requested user data from the user data store 104, and returns it to the requester (step 404) . It then removes the key from the key store 103 (step 405) .
  • the key can be used on one occasion to obtain user data from the web browser 102.
  • the user data is not stored in web cookies as would
  • a requester cannot obtain user data directly from the web browser 102 without using a key. If the key included in the request was not generated by the web browser 102, or if it was generated but has already been used for a request, the key will not be in the key store and so the request will be refused.
  • the key may be usable a limited number of times, or for a limited period of time, for example. Rather than removing the key from the key store 103 it may be marked as used, which has the additional advantage of allowing the web browser 102 to ensure it does not issue the same key more than once, as it can check a generated key is not in the key store 103 before sending it to a requester.
  • a server in accordance with an embodiment of the present invention is shown schematically in Figure 7.
  • the personal computer 500 connects to the internet 10 via a web interface 501.
  • the server 500 comprises a decision engine 502, and a content item store 503.
  • Figures 8a and 8b are a flow chart showing the
  • the server 100 receives the request for the content item (step 601) .
  • the server 100 then sends a request to the personal computer 100 for a key (step 602) .
  • the server 100 then receives a key from the personal computer (step 603), and then sends a request for user data to the personal computer 100, the request including the key (step 604) .
  • the server 100 then receives user data from the personal computer 100 (step 605), and uses the personal data to determine a content item to send from content item store 503 (step 605) .
  • the server 100 then sends the content item to the personal computer (step 607) .
  • the server 500 is able to obtain user data from the personal computer 100, by obtained the required key from the personal computer 100.
  • the server 500 uses the user data to determine a content provider from which to obtain a content item, and then requests a content item from that content provider via the web interface 501.
  • the content provider may refuse the request, in which case the server 500 can offer the request to another content
  • the user data returned to the server 500 by the personal computer 100 need not be merely user data that could be sorted by the server 500 in a cookie; it may further include user data that would usually be stored in cookies for other websites (but is now stored in the user data store 104), and/or additional data such as shopping preferences set by the user.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A computing device comprising a web browser arranged to receive and store user data. The computing device is arranged to receive a request for a key for requesting user data, and in response to generate and return a key. The web browser is arranged to receive a request for user data including a key, and in response to determine whether the key is valid, and in the case the key is valid return the requested user data.

Description

Computing devices and servers for making and receiving
requests for user data
Field of the Invention
The present invention concerns computing devices and servers for making and receiving requests for user data. The invention is particularly, but not exclusively, appropriate for use with "ad servers", that is a servers that provide advertisements for inclusion in web pages.
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 over the internet 10.
The personal computer 11 has installed on it a web browser application which is able to retrieve and display "web pages" obtained over the internet 10. 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 10 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 internet 10; the
internet 10 then relays that request to the web server 12, which in response returns the data file. The HTML data file is then relayed by the internet 10 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 a reference to a graphics file that is used to generate the picture. The reference may for example be of the form
http : //contentserver . com/picture . pg, which is interpreted as a request for the graphics file "picture.jpg", from the web server known to the internet 10 as "contentserver.com". When displaying the web page 20 as defined by the HTML data file page.html, the web browser makes a further request to the internet 10 for the required graphics file picture.jpg at address contentserver.com; the internet 10 relays the request to the content server 13, which returns the graphics file; the graphics file is then relayed by the internet 10 back to the personal computer 11, which displays it as part of the web page 20.
In addition or alternatively to a graphics file, other content may be provided. For example, a web address may be provided along with the graphics file, and the web page 20 arranged to go to that web address when the picture 22 is clicked by the user. Further, text to be displayed, or code to be executed, might be provided along with the graphics file, or an "applet" file might be provided instead of a graphics file, to give just some examples.
As can be seen, a web page obtained from a first source, in the above example the web server 12, may include content from a second source, in the above example the content server 13. There are many applications for which such an arrangement may be desirable. A common application is the supply of advertisements in web pages, whereby the provider of the web page 20 allows advertisements to be displayed as part of their web page, usually in return for payment .
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 will 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, it returns one of the graphics files from the store, corresponding to the particular advertisement it wishes to be displayed on that occasion. It is common for web servers to store user data locally upon personal computers that are being used to view the websites they provide. This can be done using web "cookies" that are records of data associated with a particular website, stored by the web browser with which the website is being viewed. Other types of user data records are used, such as Flash cookies and the like.
When a user logs into a website, the website can store in a cookie containing an identifier for the user in a cookie on the personal computer. When the user views the website again, during the same session or on another occasion, the website can request the contents of the cookie so as to identify the user, meaning user does not need to log in again. Cookies are used in various other ways to enhance website browsing experience, for example by storing details of items selected for purchase in a "web basket" on a shopping website.
Cookies are also used by third parties, such as content providers, to identify users who receive adverts so that information about the user can be determined (browsing habits and the like) .
The use of cookies can be disabled, but this can lead to websites viewed by the user having reduced functionality, which is undesirable. It would be advantageous for users to have greater control over the user data they provide. The present invention seeks to solve and/or mitigate the above-mentioned problems. Alternatively and/or additionally, the present invention provides improved computing devices and servers for making and receiving requests for user data.
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 computing device comprising a web browser arranged to receive and store user data, wherein: the computing device is arranged to receive a request for a key for requesting user data, and in response to generate and return a key; and
the web browser is arranged to receive a request for user data including a key, and in response to determine whether the key is valid, and in the case the key is valid return the requested user data.
By having the computing device provide the key that is required to obtain the user data, the computing device can decide who it wants to send a key in response to a request. This allows the computing device to control who is sent user data, rather than simply not storing and/or sending any user data at all.
Preferably, the computing device is a personal
computer .
Preferably, the web browser receives the request for the key and generates and returns the key. The
functionality may be provided by a browser plug-in,
extension or the like.
Preferably, the user data is stored in a browser cookie. Alternatively and/or additionally, the user data may be stored in a flash cookie or other suitable stored user data record. It will be appreciated that the invention is applicable to any suitable type of user data record or store from in which user data can be stored and returned to a third party.
The user data may be associated with the party making the request. In this case, the request may be for user data stored in a cookie associated with the website making request (i.e. the website's "own" cookie) . Alternatively, the user data may include user data not associated with the party making the request. For example, the user data may include user identification used by other websites. The user data may include other data stored by the user, such as biographical details, shopping preferences, or other preferences set by the user identifying subjects of interest to them. The other data need not be stored in cookies or the like. Preferably, the computing device is arranged to
determine that the key is valid if the number of times the key has been included in a request for user data does not exceed a predetermined threshold. This gives greater control over when user data is sent. More preferably, the computing device is arranged to determine that the key is valid if it has not previously been included in a request for user data. In other words, the key is a "one-time" key.
Advantageously, the computing device is further
arranged to receive user data to be stored in a specified user data record, and to store the user data in a data store distinct from the specified user data record. For example, the user data may have been provided to be stored in a cookie, but is instead stored in a separate database.
Advantageously, the computing device is further arranged to obtain user data stored in user data records, store the obtained user data in a data store distinct from the user data record, and delete the user data from the user data record .
In accordance with a second aspect of the invention there is provided a server arranged to communicate via a web interface with a computing device as described above, wherein :
the server is arranged to send a request for a key for requesting user data to the computing device, and to receive a key returned in response; and
the server is arranged to send a request for user data including the key to the computing device, and to receive user data returned in response. In this way, the server can obtain user data stored on a computing device as described above.
Advantageously, the server is arranged to send the request for the key to the computing device in response to a request from the computing device for a content item. This integrates the obtaining of user data into the process of providing content items. For example, if during a web browsing session the computing device requests a web page that includes an advert, and the request for the advert is passed to the server, in response the server asks for a key. Preferably, the server is further arranged to determine a content provider for the content item, and to provide a content item from the content provider in response to the request. In this way, the server can select the content provider to provide the content item. Advantageously, the server is further arranged to determine one or more
properties of the request for the content item, and to determine the content provider using the one or more
determined properties. This allows the server to target the request to the content provider, using the determined properties obtained by analysing the request. The server may further use information it has stored about the user. The determined properties may be obtained by analysing the HTTP header of the request, the IP address of the request, or any other information available for the request.
The server may be arranged to send a request for the content item to the content provider. This allows the content provider to provide the request, and in addition advantageously allows the content provider to decide whether they wish to provide a content item for the request or not. Alternati ely, the server may have a store of content items for different content providers.
In accordance with a third aspect of the invention there is provided a computer program product arranged, when executed on a computing device, to provide any of the computing devices described above.
In accordance with a fourth aspect of the invention there is provided a computer program product arranged, when executed on a server, to provide any of the servers
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
providing web pages;
Figure 2 is a schematic diagram of a web page; Figure 3 is a schematic diagram of a personal computer in accordance with an embodiment of the present invention;
Figure 4 is a flow chart showing the operation of the
personal computer when it receives user data for storage in a cookie;
Figure 5 is a flow chart showing the operation of the
personal computer when it receives a request for a key;
Figure 6 is a flow chart showing the operation of the
personal computer when it receives a request for a user data;
Figure 7 is a schematic diagram of a server in accordance with an embodiment of the present invention; and
Figures 8a and 8b are a flow chart showing the operation of the server in response to a request for a content item.
Detailed Description
A personal computer in accordance with an embodiment of the present invention is shown schematically in Figure 3. The personal computer 100 connects to the internet 10 via a web interface 101. A web browser 102 allows a user to view web pages. The web browser 102 comprises a plugin. The personal computer 100 further comprises a key store 103 and a user data store 104, accessed by the plugin, the use of which is explained below. Figure 4 is a flow chart showing the operation of the plugin of the web browser 102 in response to user data being received for storing in a cookie. First, the web browser 102 receives user data to store in a cookie, for example after logging into a website (step 201) . However, unlike a conventional system in which the user data would be stored in a cookie, instead the user data is stored in the user data store 104 (step 202) . In alternative embodiments, the web browser 102 may store the user data in a cookie in the conventional manner, but the storing of the data may trigger the plugin to extract the user data from the cookie and store it in the user data store, and then delete it from the cookie .
Figure 5 is a flow chart showing the operation of the plugin of the web browser 102 in response to a request for a key. First, the web browser 102 receives a request for a key via the web interface 101 (step 301) . The web browser 102 then generates a key (step 302) . The key is a unique new key, which can be generated in accordance with any known unique key generation method. A copy of the key is then stored in the key store 103 (step 303) , and also sent to the requester (step 304) .
Figure 6 is a flow chart showing the operation of the plugin of the web browser 102 in response to a request for user data via the web interface 101. First, the web browser 102 receives a request for user data, including a key (step 401) . The web browser 102 checks if the key is in the key store 103 (step 402) . If not, the web browser refuses the request for user data (step 403) . If the key is in the key store 103, the web browser 102 obtains the requested user data from the user data store 104, and returns it to the requester (step 404) . It then removes the key from the key store 103 (step 405) .
Thus, it can be seen that the key can be used on one occasion to obtain user data from the web browser 102. As the user data is not stored in web cookies as would
conventionally be the case, a requester cannot obtain user data directly from the web browser 102 without using a key. If the key included in the request was not generated by the web browser 102, or if it was generated but has already been used for a request, the key will not be in the key store and so the request will be refused.
In alternative embodiments the key may be usable a limited number of times, or for a limited period of time, for example. Rather than removing the key from the key store 103 it may be marked as used, which has the additional advantage of allowing the web browser 102 to ensure it does not issue the same key more than once, as it can check a generated key is not in the key store 103 before sending it to a requester.
A server in accordance with an embodiment of the present invention is shown schematically in Figure 7. The personal computer 500 connects to the internet 10 via a web interface 501. The server 500 comprises a decision engine 502, and a content item store 503.
Figures 8a and 8b are a flow chart showing the
operation of the server 500 in response to a request for a content item. The request is made by the personal computer 100, during a web browsing session using the web browser 102. First, the server 100 receives the request for the content item (step 601) . The server 100 then sends a request to the personal computer 100 for a key (step 602) . The server 100 then receives a key from the personal computer (step 603), and then sends a request for user data to the personal computer 100, the request including the key (step 604) . The server 100 then receives user data from the personal computer 100 (step 605), and uses the personal data to determine a content item to send from content item store 503 (step 605) . The server 100 then sends the content item to the personal computer (step 607) .
In this way, the server 500 is able to obtain user data from the personal computer 100, by obtained the required key from the personal computer 100.
In an alternative embodiment, the server 500 uses the user data to determine a content provider from which to obtain a content item, and then requests a content item from that content provider via the web interface 501. The content provider may refuse the request, in which case the server 500 can offer the request to another content
provider.
Importantly, the user data returned to the server 500 by the personal computer 100 need not be merely user data that could be sorted by the server 500 in a cookie; it may further include user data that would usually be stored in cookies for other websites (but is now stored in the user data store 104), and/or additional data such as shopping preferences set by the user.
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 computing device comprising a web browser arranged to receive and store user data, wherein:
the computing device is arranged to receive a request for a key for requesting user data, and in response to generate and return a key; and
the web browser is arranged to receive a request for user data including a key, and in response to determine whether the key is valid, and in the case the key is valid return the requested user data.
2. A computing device as claimed in claim 1, wherein the web browser receives the request for the key and generates and returns the key.
3. A computing device as claimed in claim 1 or 2, wherein the user data is stored in a browser cookie.
4. A computing device as claimed in any preceding claim, wherein the user data is associated with the party making the request.
5. A computing device as claimed in any of claims 1 to 3, wherein the user data includes user data not associated with the party making the request.
So ID for other sites
6. A computing device as claimed in any preceding claim, wherein the computing device is arranged to determine that the key is valid if the number of times the key has been included in a request for user data does not exceed a predetermined threshold.
7. A computing device as claimed in claim 6, wherein the computing device is arranged to determine that the key is valid if it has not previously been included in a request for user data.
8. A computing device as claimed in any preceding claim, further arranged to receive user data to be stored in a specified user data record, and to store the user data in a data store distinct from the specified user data record.
9. A computing device as claimed in any preceding claim, further arranged to obtain user data stored in user data records, store the obtained user data in a data store distinct from the user data record, and delete the user data from the user data record.
10. A server arranged to communicate via a web interface with a computing device as claimed in any of claims 1 to 9, wherein :
the server is arranged to send a request for a key for requesting user data to the computing device, and to receive a key returned in response; and
the server is arranged to send a request for user data including the key to the computing device, and to receive user data returned in response.
11. A server as claimed in claim 10, arranged to send the request for the key to the computing device in response to a request from the computing device for a content item.
12. A server as claimed in claim 11, further arranged to determine a content provider for the content item, and to provide a content item from the content provider in response to the request.
13. A server as claimed in claim 12, further arranged to determine one or more properties of the request for the content item, and to determine the content provider using the one or more determined properties.
14. A server as claimed in claim 12 or 13, wherein the server is arranged to send a request for the content item to the content provider.
15. A computer program product arranged, when executed on a computing device, to provide the computing device of any of claims 1 to 9.
16. A computer program product arranged, when executed server, to provide the server of any of claims 10 to 14
PCT/GB2015/050543 2014-02-28 2015-02-25 Computing devices and servers for making and receiving requests for user data WO2015128642A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB1616221.6A GB2545294A (en) 2014-02-28 2015-02-25 Computing devices and services for making and receiving requests for user data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB1403623.0A GB201403623D0 (en) 2014-02-28 2014-02-28 Computing devices and servers for making and receiving requests for user data
GB1403623.0 2014-02-28

Publications (1)

Publication Number Publication Date
WO2015128642A1 true WO2015128642A1 (en) 2015-09-03

Family

ID=50490624

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2015/050543 WO2015128642A1 (en) 2014-02-28 2015-02-25 Computing devices and servers for making and receiving requests for user data

Country Status (2)

Country Link
GB (2) GB201403623D0 (en)
WO (1) WO2015128642A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145321A1 (en) * 2009-12-15 2011-06-16 Facebook Inc. Setting Cookies in Conjunction with Phased Delivery of Structured Documents
WO2012022929A1 (en) * 2010-08-18 2012-02-23 Dancing Sun Limited Content server
US8578036B1 (en) * 2011-11-14 2013-11-05 Google Inc. Providing standardized transparency for cookies and other website data using a server side description file

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145321A1 (en) * 2009-12-15 2011-06-16 Facebook Inc. Setting Cookies in Conjunction with Phased Delivery of Structured Documents
WO2012022929A1 (en) * 2010-08-18 2012-02-23 Dancing Sun Limited Content server
US8578036B1 (en) * 2011-11-14 2013-11-05 Google Inc. Providing standardized transparency for cookies and other website data using a server side description file

Also Published As

Publication number Publication date
GB201403623D0 (en) 2014-04-16
GB2545294A (en) 2017-06-14

Similar Documents

Publication Publication Date Title
US11533356B2 (en) Establishing a trust association
US9183316B2 (en) Providing action links to share web content
US9547648B2 (en) Electronic document information extraction
US8498895B2 (en) Browser based user identification
US8359236B1 (en) Privacy-sensitive cookies
US20110093790A1 (en) Preemptive caching for web-based systems
US20140344707A1 (en) Information Distribution Method and Device
US10110966B2 (en) Method, device, server and client device for video processing
US8719292B2 (en) Interactive system for internet information retrieval and exploration
JP2009259260A (en) System for using continuous type message transmission unit in network architecture, and method therefor
KR20080114818A (en) Offline advertisement serving and presentation
CN102449655A (en) Protected serving of electronic content
US9400988B2 (en) Media content based advertising
US20180005276A1 (en) User controlled profiles
WO2011002989A1 (en) System and method for enhancing digital content
CN105389369A (en) Web page commenting method and apparatus, terminal and server
JP2013512504A (en) Remote printing
JP2006526218A (en) Generation and presentation of search results using addressing information
CN105450460B (en) Network operation recording method and system
US9508078B1 (en) Link creation techniques
US10104196B2 (en) Method of and server for transmitting a personalized message to a user electronic device
US20130316320A1 (en) Contextual Just in Time Learning System and Method
JP6213881B2 (en) RECOMMENDED INFORMATION TRANSMITTING DEVICE, COMPUTER PROGRAM, RECOMMENDED INFORMATION DISPLAY SYSTEM, AND RECOMMENDED INFORMATION DISPLAY METHOD
WO2015128642A1 (en) Computing devices and servers for making and receiving requests for user data
US9947030B1 (en) Enhanced privacy with fewer cookies

Legal Events

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

Ref document number: 15711809

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 201616221

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20150225

122 Ep: pct application non-entry in european phase

Ref document number: 15711809

Country of ref document: EP

Kind code of ref document: A1