Detecting browser cache by jQuery

2019-02-16 16:07发布

Is there a jQuery approach to detect whether a page is loaded from the browser cache OR it has been received from the server by HTTP request?

3条回答
Viruses.
2楼-- · 2019-02-16 16:37

You could also use Navigation Timing to measure the network latency in great detail.

Here is a good article: http://www.html5rocks.com/en/tutorials/webperformance/basics/

If the time difference between fetchStart and responseStart is very low, the page was loaded from cache, for example.

查看更多
放我归山
3楼-- · 2019-02-16 16:38

The following article should answer your question:

Detecting when a page is loaded from the browser cache.

The concept of the above article is that at every request you set the cookie from the server side and check the cookie using JavaScript (or jQuery). if the cookie matches that of the previously requested page, then it is a cached page. If it doesn't, it is a fresh page.

Hope that helps.

查看更多
SAY GOODBYE
4楼-- · 2019-02-16 16:40

Serve the page server-written timestamp value var origin = <%=someTimeStamp %>;, read it and compare against a JavaScript generated value representing the current time.

Note: The client timestamp and the server timestamp would be different because there are chances the client system time is wrong and also the server and the client systems may not be from the same time zone. This has to be taken care.

查看更多
登录 后发表回答