如果我使用history.back()按钮按下那么会发生什么?
是否会从浏览器的本地历史记录或缓存中显示HTML内容,而浏览器是否没有请求服务器?或者浏览器会根据驻留在浏览器历史记录中的URL向服务器请求吗?
最佳答案
在JavaScript中调用“history.back()”与在浏览器的用户界面中按下后退按钮相同(但是,如果当前查看的位置包含框架并且已导航,如果您是迂腐的话,则可能会略有不同) .
至于结果是来自服务器还是“缓存”:由用户代理(浏览器)决定.规范(RFC 2616第13.13,77000节)说:
History mechanisms and caches are
different. In particular history
mechanisms SHOULD NOT try to show a
semantically transparent view of the
current state of a resource. Rather,a
history mechanism is meant to show
exactly what the user saw at the time
when the resource was retrieved.
但是,用户代理实现质量不同.例如,Mozilla / Firefox的相关元bug可以在https://bugzilla.mozilla.org/show_bug.cgi?id=288462找到