Method and apparatus for automatically optimizing the loading of images in a cloud-based proxy service
First Claim
1. A method for automatically optimizing the loading of images of a web page, the method comprising:
- receiving a request for the web page, the request originating from a client network application of a client device, the web page including a plurality of references to a plurality of images respectively;
retrieving the requested web page;
modifying the retrieved web page including,modifying code of the retrieved web page such that the client network application will not, for each one of the plurality of images, initially request those images when parsing the web page, andadding code to the retrieved web page that, when executed by the client network application, cause at least two of the plurality of images to be requested with a single request;
transmitting the modified web page to the client device;
receiving, from the client network application of the client device, a single request for at least two of the images referenced in the web page;
retrieving the at least two of the images;
degrading the retrieved at least two of the images to reduce the file size of the at least two of the images;
transmitting the degraded at least two of the images to the client device;
receiving, from the client network application of the client device, a request for one of the degraded at least two of the images in a full-quality version of that image;
responsive to receiving the request for one of the degraded at least two of the images in a full-quality version of that image, retrieving that requested image, wherein the retrieved image is a full-quality version of the image; and
transmitting the full-quality version of the image to the client device.
1 Assignment
0 Petitions
Accused Products
Abstract
A request for a web page is received at a proxy server. The request originates from a client network application of a client device. The requested web page includes multiple references to multiple images. The proxy server retrieves the requested web page. The proxy server modifies code of the retrieved web page such that the client network application will not, for each one of those images, initially request those images when parsing the page. The proxy server also adds code to the retrieved web page that, when executed by the client network application, causes at least two of the images to be requested with a single request. The proxy server transmits the modified web page to the client device.
60 Citations
22 Claims
-
1. A method for automatically optimizing the loading of images of a web page, the method comprising:
-
receiving a request for the web page, the request originating from a client network application of a client device, the web page including a plurality of references to a plurality of images respectively; retrieving the requested web page; modifying the retrieved web page including, modifying code of the retrieved web page such that the client network application will not, for each one of the plurality of images, initially request those images when parsing the web page, and adding code to the retrieved web page that, when executed by the client network application, cause at least two of the plurality of images to be requested with a single request; transmitting the modified web page to the client device; receiving, from the client network application of the client device, a single request for at least two of the images referenced in the web page; retrieving the at least two of the images; degrading the retrieved at least two of the images to reduce the file size of the at least two of the images; transmitting the degraded at least two of the images to the client device; receiving, from the client network application of the client device, a request for one of the degraded at least two of the images in a full-quality version of that image; responsive to receiving the request for one of the degraded at least two of the images in a full-quality version of that image, retrieving that requested image, wherein the retrieved image is a full-quality version of the image; and transmitting the full-quality version of the image to the client device. - View Dependent Claims (2, 3, 4, 5, 17, 21)
-
-
6. A method in a client device for automatically optimizing the loading of images of a web page while rendering the web page, the method comprising:
-
receiving a web page that includes a plurality of references to a plurality of images respectively, wherein the plurality of references have been modified such that the plurality of images will not be initially requested, and wherein the web page also includes code to optimize the loading of the plurality of images; executing the code to optimize the loading of the plurality of images, wherein executing the code causes a single request for at least two of the plurality of images to be generated and transmitted; in response to transmitted single request, receiving degraded versions of the at least two of the plurality of images; displaying the received degraded versions of the at least two of the plurality of images in their respective appropriate locations; after the web page is finished loading, transmitting requests for full quality versions of those images that were displayed in degraded form; and for each full quality version of those images that are received in response to the requests, replacing the degraded version of that image with its full quality version counterpart. - View Dependent Claims (7, 8, 18)
-
-
9. A non-transitory machine-readable storage medium that provides instructions that, when executed by a processor, cause the processor to perform operations comprising:
-
receiving a request for a web page, the request originating from a client network application of a client device, the web page including a plurality of references to a plurality of images respectively; retrieving the requested web page; modifying the retrieved web page including, modifying code of the retrieved web page such that the client network application will not, for each one of the plurality of images, initially request those images when parsing the web page, and adding code to the retrieved web page that, when executed by the client network application, cause at least two of the plurality of images to be requested with a single request; transmitting the modified web page to the client device; receiving, from the client network application of the client device, a single request for at least two of the images referenced in the web page; retrieving the at least two of the images; degrading the retrieved at least two of the images to reduce the file size of the at least two of the images; transmitting the degraded at least two of the images to the client device; receiving, from the client network application of the client device, a request for one of the degraded at least two of the images in a full-quality version of that image; responsive to receiving the request for one of the degraded at least two of the images in a full-quality version of that image, retrieving that requested image, wherein the retrieved image is a full-quality version of the image; and transmitting the full-quality version of the image to the client device. - View Dependent Claims (10, 11, 12, 13, 19, 22)
-
-
14. A non-transitory machine-readable storage medium that provides instructions that, when executed by a processor, cause the processor to perform operations comprising:
-
receiving a web page that includes a plurality of references to a plurality of images respectively, wherein the plurality of references have been modified such that the plurality of images will not be initially requested, and wherein the web page also includes code to optimize the loading of the plurality of images; executing the code to optimize the loading of the plurality of images, wherein executing the code causes a single request for at least two of the plurality of images to be generated and transmitted; in response to transmitted single request, receiving degraded versions of the at least two of the plurality of images; displaying the received degraded versions of the at least two of the plurality of images in their respective appropriate locations; after the web page is finished loading, transmitting requests for full quality versions of those images that were displayed in degraded form; and for each full quality version of those images that are received in response to the requests, replacing the degraded version of that image with its full quality version counterpart. - View Dependent Claims (15, 16, 20)
-
Specification