Setting Cookies in Conjunction with Phased Delivery of Structured Documents
First Claim
1. A method comprising:
- receiving, by a computing system, a first request from a client for a target structured document;
generating, by the computing system, the target structured document and one or more parameters for one or more state objects associated with the client;
in a first response phase, transmitting, by the computing system, a first portion of the target structured document to the client;
in a second response phase, transmitting, by the computing system, a second portion of the target structured document, wherein the second portion of the target structured document includes a code segment,receiving, by the computing system, a second request from the client, wherein the second request is sent from the client as a result of the client executing the code segment;
transmitting, by the computing system, a response to the second request that comprises the one or more parameters for the one or more state objects.
2 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, a method includes receiving a first request from a client for a target structured document and generating the target structured document and one or more parameters for one or more state objects associated with the client. In a particular embodiment, the method includes, in a first response phase, transmitting a first portion of the target structured document to the client. In a particular embodiment, the method further includes, in a second response phase, transmitting a second portion of the target structured document that includes a code segment. The method may additionally include receiving a second request from the client sent from the client as a result of the client executing the code segment, and transmitting a response to the second request that comprises the one or more parameters for the one or more state objects.
77 Citations
25 Claims
-
1. A method comprising:
-
receiving, by a computing system, a first request from a client for a target structured document; generating, by the computing system, the target structured document and one or more parameters for one or more state objects associated with the client; in a first response phase, transmitting, by the computing system, a first portion of the target structured document to the client; in a second response phase, transmitting, by the computing system, a second portion of the target structured document, wherein the second portion of the target structured document includes a code segment, receiving, by the computing system, a second request from the client, wherein the second request is sent from the client as a result of the client executing the code segment; transmitting, by the computing system, a response to the second request that comprises the one or more parameters for the one or more state objects.
-
-
2. The method of claim 1, wherein the code segment comprises a JavaScript code segment.
-
3. The method of claim 2, wherein the JavaScript code segment, when executed by the client, is configured to generate an Asynchronous JavaScript XML (AJAX) call, and wherein the second request comprises the AJAX call.
-
4. The method of claim 3, further comprising storing, by the computing system, the one or more parameters.
-
5. The method of claim 4, further comprising generating, by the computing system, a key for retrieving the stored parameters, wherein the second response further comprises the key, and wherein the second request further comprises the key.
-
6. The method of claim 5, wherein transmitting a response to the second request that comprises the one or more parameters for the one or more state objects comprises:
-
extracting, by the computing system, the key from the second request; retrieving, by the computing system, the one or more parameters using the key; inserting, by the computing system, the one or more retrieved parameters into the response to the second request.
-
-
7. The method of claim 1, wherein the first response is transmitted to the client in a first Hypertext Transfer Protocol (HTTP) response and wherein the response to the second request is transmitted to the client in an HTTP header in a second HTTP response.
-
8. The method of claim 1, wherein the one or more state objects are HTTPOnly cookies.
-
9. The method of claim 1, wherein:
-
the first response phase precedes generating the target structured document and one or more parameters for one or more state objects associated with the client; the method further comprises accessing, by the computing system, a data structure comprising an entry for the target structured document and one or more first resources associated with the target structured document; and the first portion of the target structured document includes one or more of the first resources or references for one or more of the first resources.
-
-
10. The method of claim 9, wherein the one or more first resources are resources that have been previously determined to each have at least a predetermined probability to be included in a response to a future request for the target structured document that exceeds a predetermined threshold value.
-
11. A method comprising:
-
receiving, by a computing system, a first request from a client for a target structured document; generating, by the computing system, the target structured document and one or more parameters for one or more state objects associated with the client; in a first response phase, transmitting, by the computing system, a first portion of the target structured document to the client; in a second response phase, transmitting, by the computing system, a second portion of the target structured document that includes the one or more parameters and a code segment, wherein the code segment, when executed by the client, is operative to cause the client to set the one or more state objects based on the one or more parameters.
-
-
12. The method of claim 11, wherein the code segment comprises a JavaScript code segment.
-
13. The method of claim 11, wherein the one or more state objects are non-HTTPOnly cookies.
-
14. The method of claim 11, wherein:
-
the first response phase precedes generating the target structured document and one or more parameters for one or more state objects associated with the client; the method further comprises accessing, by the computing system, a data structure comprising an entry for the target structured document and one or more first resources associated with the target structured document; and the first portion of the target structured document includes one or more of the first resources or references for one or more of the first resources.
-
-
15. The method of claim 14, wherein the one or more first resources are resources that have been previously determined to each have at least a predetermined probability to be included in a response to a future request for the target structured document that exceeds a predetermined threshold value.
-
16. A system comprising:
-
one or more processors; and logic encoded in one or more computer-readable tangible storage media that, when executed by the one or more processors, is operable to; receive a first request from a client for a target structured document; generate the target structured document and one or more parameters for one or more state objects associated with the client; in a first response phase, transmit a first portion of the target structured document to the client; in a second response phase, transmit a second portion of the target structured document, wherein the second portion of the target structured document includes a code segment; receive a second request from the client, wherein the second request is sent from the client as a result of the client executing the code segment; transmit a response to the second request that comprises the one or more parameters for the one or more state objects.
-
-
17. The system of claim 16, wherein the code segment comprises a JavaScript code segment.
-
18. The system of claim 17, wherein the JavaScript code segment, when executed by the client, is configured to generate an Asynchronous JavaScript XML (AJAX) call, and wherein the second request comprises the AJAX call.
-
19. The system of claim 18, further comprising logic operable when executed to store the one or more parameters.
-
20. The system of claim 19, further comprising generating, by the computing system, a key for retrieving the stored parameters, wherein the second response further comprises the key, and wherein the second request further comprises the key.
-
21. The system of claim 20, wherein the logic operable to transmit a response to the second request that comprises the one or more parameters for the one or more state objects comprises logic operable when executed to:
-
extract the key from the second request; retrieve the one or more parameters using the key; insert the one or more retrieved parameters into the response to the second request.
-
-
22. The system of claim 16, wherein the first response is transmitted to the client in a first Hypertext Transfer Protocol (HTTP) response and wherein the response to the second request is transmitted to the client in an HTTP header in a second HTTP response.
-
23. The system of claim 16, wherein the one or more state objects are HTTPOnly cookies.
-
24. The system of claim 16, wherein:
-
the first response phase precedes generating the target structured document and one or more parameters for one or more state objects associated with the client; the system further comprises logic operable when executed to access a data structure comprising an entry for the target structured document and one or more first resources associated with the target structured document; and the first portion of the target structured document includes one or more of the first resources or references for one or more of the first resources.
-
-
25. The system of claim 24, wherein the one or more first resources are resources that have been previously determined to each have at least a predetermined probability to be included in a response to a future request for the target structured document that exceeds a predetermined threshold value.
Specification