Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>The behavior you are seeing is the intended (see <a href="https://tools.ietf.org/html/rfc7234" rel="nofollow">RFC7234</a> for more details), specified behavior: </p> <p>All modern browsers will send HTTP requests to the server for every page element displayed, regardless of cache status. This was a design decision made at the request of web services (especially advertising networks) to ensure that HTTP servers were able to maintain records of every display of every element. </p> <p>If the browsers did not make these requests, the server would never be notified that an image had been displayed to the user. For advertising networks, this would be catastrophic. Early on, advertising networks 'hacked' their way around this by serving the same ad image using randomly generated names (ex: 'coke_ad_1_98719283719283.gif'). However, for ISPs this practice caused a huge increase in data transfers, because every one of their users was re-downloading these identical ad images, bypassing any caching/proxy servers their ISP was operating.</p> <p>So a truce was reached: Browsers would always send HTTP requests, even for un-expired cached elements. Servers would respond with HTTP 304 status codes ("not modified"). This allows the servers to record the fact that the image was displayed to the client. As a result, advertising networks <em>generally</em> stopped using randomized image names to bypass network cache servers.</p> <p>This gave the ad networks what they wanted - a record of every image displayed - and it gave ISPs what they wanted - cache-able images and static content.</p> <p>That is why there isn't much you can do to prevent browsers from sending HTTP requests for cached page elements.</p> <p>But if you look at other available client-side solutions that came along with html5, there is a scope to prevent resource loading</p> <ol> <li><a href="http://www.html5rocks.com/en/tutorials/appcache/beginner/" rel="nofollow">Cache Manifest</a> (in spite of its gotchas)</li> <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API" rel="nofollow">IndexedDB</a> (nice asynchronous features, allows blob storage)</li> <li><a href="https://developer.mozilla.org/en/docs/Web/API/Window/localStorage" rel="nofollow">Local Storage</a> (not async)</li> </ol>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload