Methods and systems of client-side caching of pages with changing content
First Claim
1. A client-side caching system, comprising:
- a client for issuing a request based on a user selection for a resource on a server; and
a server for receiving the request and sending a response including a cache control object and a client-side script to the client, wherein the cache control object represents the last version of the resource, and wherein the client-side script appends the cache control object to the request for the resource and causes the client to automatically re-request the resource with the appended cache control object so that if the last version of the resource is in the client cache, the resource is retrieved from the client cache rather than from the server, and if not, the resource is retrieved from the server.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention relates to Internet based and web applications and the need to reduce page latency and bandwidth usage. The invention can achieve these goals by making use of the cache built in to standard web browsers. In one embodiment, the invention provides that a web application user will use their browser to request a page from the application web server, which responds with a small page that includes a script. The script appends a previously established cookie value to the URL originally requested and the browser then re-requests the URL with the appended cookie value. (The server computes the cookie value based on the last modified time of the data used to generate the page.) If the most recent version of the page is in the browser cache, the browser gets a cache hit, which means the page is retrieved from browser cache rather than from the server, rapidly displaying the page to the user. If, on the other hand, there is only an older version of the page in the browser cache, there is a cache miss (because the rewritten URL will not match any URL in the cache) and the browser will send the request to the server to retrieve the most recent version of the page.
-
Citations
22 Claims
-
1. A client-side caching system, comprising:
-
a client for issuing a request based on a user selection for a resource on a server; and a server for receiving the request and sending a response including a cache control object and a client-side script to the client, wherein the cache control object represents the last version of the resource, and wherein the client-side script appends the cache control object to the request for the resource and causes the client to automatically re-request the resource with the appended cache control object so that if the last version of the resource is in the client cache, the resource is retrieved from the client cache rather than from the server, and if not, the resource is retrieved from the server. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A server for a client-side caching system, comprising:
a server for receiving a client request for a resource, creating and inserting a cache control object and a client-side script in a response to the client request, wherein the cache control object represents the last version of the resource, and wherein the client-side script appends the cache control object to the client request for the resource and causes the client to automatically re-request the resource with the appended cache control object so that if the last version of the resource is in the client cache, the resource is retrieved from the client cache rather than from the server, and if not, the resource is retrieved from the server. - View Dependent Claims (7, 8)
-
9. A client-side caching system, comprising:
a client for issuing a request based on a user selection for a resource stored on a server and for receiving a server response including a cache control object and a client-side script, wherein the cache control object represents the correct version of the resource, and wherein the client-side script appends the cache control object to the request for the resource, and without another user selection for the resource causes the client to automatically re-request the resource with the appended cache control object so that if the correct version of the resource is in the client cache, the resource is retrieved from the client cache rather than from the server, and if not, the resource is retrieved from the server. - View Dependent Claims (10, 11, 12, 13, 14)
-
15. A method of client-side caching in a server, comprising:
-
receiving a client request for a web page; and inserting a cache control object and a client-side script in response to the client request, wherein the cache control object represents the last version of the web page, and wherein the client-side script appends the cache control object to the client request for the web page and causes the client to automatically re-request the web page with the appended cache control object so that if the last version of the web page is in the client cache, the web page is retrieved from the client cache rather than from the server, and if not, the web page is retrieved from the server. - View Dependent Claims (16, 17)
-
-
18. A method of client-side caching in a browser, comprising:
-
presenting a user selection for a web page at a URL; and receiving a server response including a cache control object and a client-side script, wherein the cache control object represents the most recent version of the web page, and wherein the client-side script appends the cache control object value to the URL generating a rewritten URL and causes the browser to automatically re-request the web page with the rewritten URL so that if the most recent version of the web page is in the browser cache, the web page is retrieved from the browser cache, and if not, the web page is retrieved from the server.
-
-
19. A method performed in a server to implement client-side caching, comprising:
-
receiving a request from a web browser with a cache based on a user selection for a web page located at a URL on the server; and sending a response including a cache control object and a client-side script to the web browser, wherein the cache control object value represents the last version of the web page, and wherein the client-side script appends the cache control object value to the URL of the requested web page to form a rewritten URL and causes the web browser to automatically re-request the web page using the rewritten URL so that if the last version of the web page is in the web browser cache, the web page is retrieved from the web browser cache rather than from the server, and if not, the web page is retrieved from the server. - View Dependent Claims (20, 21, 22)
-
Specification