Managing state information across communication sessions between a client and a server via a stateless protocol
First Claim
1. A method comprising:
- receiving, at a server, a request from a client for web content embodied in a web site associated with the server, said sewer being coupled to a data communications network, said client having a first memory area that is inaccessible to the server, said first memory area comprising a client browser cache;
generating a client identifier in response to the received request, said client identifier being specific to the client across a plurality of communication sessions between the client and the sewer;
associating state information related to the received request with the generated client identifier in a database for enabling state management across the plurality of communication sessions between the client and the server, said database being stored in a second memory area that is accessible to the server;
identifying the web content embodied in the web site, said web content including client-cacheable web content and non-client-cacheable web content, said client-cacheable web content including a reference to the non-client-cacheable web content, said non-client-cacheable web content being stored in a third memory area that is accessible to the server;
adding the generated client identifier to the reference included in the client-cacheable web content;
delivering the web content embodied in the web site to the client, said delivered web content including the client-cacheable web content with the reference having the added client identifier, wherein the client stores, upon receipt, the client-cacheable web content of the delivered web content as information in the client browser cache that is inaccessible to the server;
receiving, at the server, a subsequent request from the client for the non-client-cacheable web content stored in the third memory area, the received subsequent request including the reference to the non-client-cacheable web content having the added client identifier;
generating the non-client-cacheable web content, said non-client-cacheable web content being client-specific based on the received client identifier;
accessing the database in response to the received client identifier to manage the state information; and
generating a client redirect in response to the received, subsequent request, wherein the client retrieves the non-client-cacheable web content from the third memory area responsive to the client redirect.
2 Assignments
0 Petitions
Accused Products
Abstract
Managing state information across communication sessions between a client and a server via a stateless protocol. The server delivers to the client a cacheable web page with a hyperlink to non-cacheable embedded content. In the hyperlink to the non-cacheable embedded content, the server adds a token or an identifier uniquely associated with the user. When the user obtains embedded content from the cached web page via the hyperlink, the identifier is also sent to the server. Upon receipt of the identifier from the client, the server accesses the stored state information. In this manner, the server manages state information related to the client across communication sessions without the use of cookies as long as the client caches the web page with the unique identifier.
-
Citations
16 Claims
-
1. A method comprising:
-
receiving, at a server, a request from a client for web content embodied in a web site associated with the server, said sewer being coupled to a data communications network, said client having a first memory area that is inaccessible to the server, said first memory area comprising a client browser cache; generating a client identifier in response to the received request, said client identifier being specific to the client across a plurality of communication sessions between the client and the sewer; associating state information related to the received request with the generated client identifier in a database for enabling state management across the plurality of communication sessions between the client and the server, said database being stored in a second memory area that is accessible to the server; identifying the web content embodied in the web site, said web content including client-cacheable web content and non-client-cacheable web content, said client-cacheable web content including a reference to the non-client-cacheable web content, said non-client-cacheable web content being stored in a third memory area that is accessible to the server; adding the generated client identifier to the reference included in the client-cacheable web content; delivering the web content embodied in the web site to the client, said delivered web content including the client-cacheable web content with the reference having the added client identifier, wherein the client stores, upon receipt, the client-cacheable web content of the delivered web content as information in the client browser cache that is inaccessible to the server; receiving, at the server, a subsequent request from the client for the non-client-cacheable web content stored in the third memory area, the received subsequent request including the reference to the non-client-cacheable web content having the added client identifier; generating the non-client-cacheable web content, said non-client-cacheable web content being client-specific based on the received client identifier; accessing the database in response to the received client identifier to manage the state information; and generating a client redirect in response to the received, subsequent request, wherein the client retrieves the non-client-cacheable web content from the third memory area responsive to the client redirect. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more computer storage media having computer-executable components the components comprising:
-
an interface component for coupling a server to a data communication network, wherein a client is coupled to the data communication network, said interface component receiving a first request from a client for web content embodied in a website, said web content including client-cacheable web content and non-client-cacheable web content, said client-cacheable web content including a reference to said non-client-cacheable web content; a customization component for generating a client identifier in response to the interface component receiving the first request from the client for the web content embodied in the website, adding the generated client identifier to the reference included in the client-cacheable web content, and transmitting to the client the web content including client-cacheable web content having the reference with the added client identifier, wherein the client caches the transmitted client-cacheable web content in a client browser cache that is inaccessible to the server; and wherein the interface component receives a subsequent request for the non-cacheable web content from the client, said subsequent request including the reference to the non-cacheable content having the generated client identifier; a profile component for generating the non-client-cacheable web content, said non-client-cacheable web content being client-specific based on the client identifier, said profile component further accessing a database in response to the received client identifier to manage state information as a function of the client identifier across the plurality of communication sessions between the client and the server, wherein the sewer generates a client redirect in response to the subsequent request received by the interface component, and wherein the client retrieves the non-client-cacheable web content generated by the profile component from a memory area accessible to the sewer responsive to the client redirect. - View Dependent Claims (9, 10, 11)
-
-
12. A computer storage medium having stored thereon a data structure representing web content customized for a client, said client and a sewer being coupled to a data communication network, the data structure comprising:
-
a first field caching client-cacheable web content embodied in a client requested web site; and a second field, within the first field, caching a reference to non-client-cacheable web content embodied in said client requested web site, the reference including a client identifier specific to the client across a plurality of communication sessions between the client and the sewer, wherein, responsive to a first request by the client for the website, the sewer generates the client identifier and adds said generated client identifier to the reference and sends the client the data structure for storage as information in a memory area, said memory area being a client browser cache that is inaccessible to the server, wherein the client subsequently requests the non-client-cacheable web content from the server via the reference including the client identifier, wherein the sewer generates the non-client-cacheable web content from content stored in another memory area that is accessible to the server, said additional web content being client-specific based on the client identifier, wherein the server associates state information regarding the client with the client identifier received in the request for the non-client-cacheable web content and manages the associated state information across the plurality of communication sessions between the client and the server, and wherein the sewer generates a client redirect by which the client retrieves the non-client-cacheable web content. - View Dependent Claims (13, 14, 15, 16)
-
Specification