Method and apparatus for maintaining state information on an HTTP client system in relation to server domain and path attributes
First Claim
1. A method for subscribing to an on-line information service, said method comprising the steps of:
- requesting a first information service from an http server; and
transmitting a state object from a client computer system to said http server, said state object being stored on said client system and specifying user information to said http server.
6 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for transferring state information between a server computer system and a client computer system. In one embodiment of the method, an http client requests a file, such as an HTML document, on an http server, and the http server transmits the file to the http client. In addition, the http server transmits a state object, which describes certain state information, to the http client. The http client stores the state object, and will typically send the state object back to the http server when making later requests for files on the http server. In a typical embodiment, the state object includes a domain attribute which specifies a domain or network address, and the state object is transmitted from the http client to a server only when the http client makes an http request to the server and the server is within the domain. In one embodiment, the apparatus includes a processor and memory and a computer readable medium which stores program instructions. In the case of the client system, the instructions specify operations such as receiving and storing the state information; in the case of the server system, the instructions specify operations such as sending the state information to a client system.
-
Citations
34 Claims
-
1. A method for subscribing to an on-line information service, said method comprising the steps of:
-
requesting a first information service from an http server; and transmitting a state object from a client computer system to said http server, said state object being stored on said client system and specifying user information to said http server. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-implemented method performed by a hardware server system, comprising:
-
receiving, at the server system, a hypertext transfer protocol (HTTP) request from a client; responding to the HTTP request by transmitting an HTTP response to the client wherein the HTTP response includes an HTTP header, the HTTP header including at least one set-cookie instruction specified by a “
Set-Cookie;
”
text string, wherein the set-cookie instruction includes;a name-value pair, the name-value pair specifying an assignment of a particular value to a particular name and being specified in the set-cookie instruction by a text string in a “
NAME=VALUE”
format; andattribute information, wherein the attribute information specifies criteria to enable the client to determine whether to return the name-value pair to the server system with a subsequent HTTP request and wherein the attribute information includes; a domain attribute that specifies a domain for which the name-value pair is valid, the domain being specified in the set-cookie instruction as a text string in a “
domain=DOMAIN”
format;a path attribute specifying a range of Uniform Resource Locators (URLs), in a domain of the server system, for which the name-value pair is valid, the path attribute being specified in the set-cookie instruction as a text string in a “
path=PATH”
format; andan expiration attribute that specifies a valid life time for the name-value pair, the valid life time specifying the persistent storage of the name-value pair across one or more browser sessions, each browser session corresponding to a period during which a browser application is running on the client, and terminating on a specified date, the expiration attribute being specified in the set-cookie instruction as a text string in a “
expires=DATE”
format. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer-implemented server system, for use in a communications network, comprising:
-
a processing system comprising one or more processors; and a memory comprising one or more computer readable media, wherein the memory stores computer instructions that, when executed by the processing system, cause the server system to perform the operations of; receiving, from a client, a hypertext transfer protocol (HTTP) request; sending, in response to the HTTP request, an HTTP response, wherein the HTTP response includes an HTTP header that includes at least one set-cookie instruction specified by a “
Set-Cookie;
”
text string, wherein the set-cookie instruction includes;a name-value pair, the name-value pair specifying an assignment of a particular value to a particular name and being specified in the set-cookie instruction by a text string in a “
NAME=VALUE”
format; andattribute information, wherein the attribute information specifies criteria to enable the client to determine whether to return the name-value pair to the server system with a subsequent HTTP request and wherein the attribute information includes; a domain attribute that specifies a domain for which the name-value pair is valid, the domain being specified in the set-cookie instruction as a text string in a “
domain=DOMAIN”
format;a path attribute that specifies a range of uniform resource locators for which the name-value pair is valid in a domain of the server system, the path being specified in the set-cookie instruction as a text string in a “
path=PATH”
format; andan expiration attribute that specifies a valid life time for the first name-value pair, the valid life time specifying the persistent storage of the name-value pair across one or more browser sessions, each browser session corresponding to a period during which a browser application is running on the client, and terminating on a specified date, the expiration attribute being specified in the set-cookie instruction as a text string in a “
expires=DATE”
format. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer-implemented method performed by a hardware client system, the method comprising:
-
sending a first hypertext transfer protocol (HTTP) request to a server system during a first browsing session, the first browsing session corresponding to a period of time during which a browser application is running on the client system; receiving an HTTP response from the server system, wherein the HTTP response includes an HTTP header, the HTTP header specifying a “
Set-Cookie;
”
text string and including;a name-value pair; a domain attribute that specifies a domain for which the name-value pair is valid, a path attribute that specifies a range of uniform resource locators (URLs) for which the name-value pair is valid in the domain, and an expiration attribute that specifies a valid life time for the name-value pair; storing the name-value pair on the client system such that the name-value pair is related to at least the domain attribute and the path attribute; subsequently, determining whether the name-value pair is valid for a URL of a second HTTP request by the client system made during a second browsing session, the second browsing session corresponding to a period of time during which a browser application is running on the client system and differing from the first browsing session, wherein determining whether the name-value pair is valid comprises comparing the URL to the domain attribute and the path attribute, and determining whether the second HTTP request is made at a time within the valid life time; and when the name-value pair is determined to be valid, transmitting the name-value pair within an HTTP header in the second HTTP request according to a “
Cookie;
NAME=VALUE”
format. - View Dependent Claims (27, 28, 29, 30)
-
-
31. A client system, comprising:
-
a processing system comprising one or more processors; a memory comprising one or more computer-readable media, the memory containing computer instructions that, when executed by the processing system, cause the client system to perform the operations of; sending a first hypertext transfer protocol (HTTP) request to a server system during a first browsing session, the first browsing session corresponding to a period of time during which a browser application is running on the client system; receiving, in response to the first HTTP request, an HTTP response from the server system, wherein the HTTP response includes an HTTP header that specifies a “
Set-Cookie;
”
text string and includes;a name-value pair; a domain attribute that specifies a domain for which the name-value pair is valid, a path attribute that specifies a range of uniform resource locators for which the name-value pair is valid in the domain, and an expiration attribute that specifies a valid life time for the name-value pair; storing, in memory, the name-value pair; sending a second HTTP request to the server system, during a second browsing session, the second browsing session corresponding to a period of time during which a browser application is running on the client system and differing from the first browsing session, wherein the second HTTP request specifies a domain and a resource; and including the name-value pair in an HTTP header in the second HTTP request according to a “
Cookie;
NAME=VALUE”
format only if;the domain specified by the second HTTP request is within the domain specified by the domain attribute, the resource specified by the second HTTP request is within the path specified by the path attribute, and ullispecified by the expiration attribute. - View Dependent Claims (32, 33)
-
-
34. A computer-implemented method performed by a hardware server system, comprising:
-
receiving, at the server system, a hypertext transfer protocol (HTTP) request from a client for an HTML document; responding to the HTTP request by transmitting an HTTP response to the client, wherein the HTTP response includes the requested HTML document and an HTTP header, the HTTP header including at least one set-cookie instruction specified by a “
Set-Cookie;
”
text string, wherein the set-cookie instruction includes;a name-value pair, the name-value pair specifying an assignment of a particular value to a particular name and being specified in the set-cookie instruction by a text string in a “
NAME=VALUE”
format, wherein the name-value pair includes information descriptive of the requested HTML document; andattribute information, wherein the attribute information specifies criteria to enable the client to determine whether to return the name-value pair to the server system with a subsequent HTTP request and wherein the attribute information includes; a domain attribute that specifies a domain for which the name-value pair is valid, the domain being specified in the set-cookie instruction as a text string in a “
domain=DOMAIN”
format;a path attribute specifying a range of Uniform Resource Locators (URLs), in a domain of the server system, for which the name-value pair is valid, the path attribute being specified in the set-cookie instruction as a text string in a “
path=PATH”
format; andan expiration attribute that specifies a valid life time for the name-value pair, the valid life time specifying the persistent storage of the name-value pair across one or more browser sessions, each browser session corresponding to a period during which a browser application is running on the client, and terminating on a specified date, the expiration attribute being specified in the set-cookie instruction as a text string in a “
expires=DATE”
format.
-
Specification