【问题标题】:Back Button (Browser Behavior)后退按钮(浏览器行为)
【发布时间】:2010-12-13 01:38:42
【问题描述】:

在网络浏览器中按下后退按钮时,默认操作是发送获取请求还是从浏览器历史记录中提供服务?

如果特定于浏览器,Internet Explorer 和 Firefox 的默认操作是什么?

【问题讨论】:

  • 好问题,添加评论以记住阅读答案。

标签: internet-explorer firefox browser


【解决方案1】:

非正式回答

如果上一页是GET request,则通常会从浏览器的缓存中获取该页面,除非页面上的缓存时间已过期(此过期时间由网页管理员设置),或其他因素导致浏览器认为信息不够新鲜。

如果上一页是POST request,浏览器通常会询问您是否要重新发送信息,然后从服务器获取页面。

正式答复

这在浏览器应实现的HTTP Protocol specification 中的Section 13 中进行了介绍。

具体而言,13.10 规定:

某些 HTTP 方法必须导致缓存 使实体无效。这是 该实体所指的实体 请求 URI,或按位置或 Content-Location 标头(如果存在)。 这些方法是:

  - PUT
  - DELETE
  - POST

可能会缓存其他类型的请求(例如 GET)。如果您想了解详细信息,请通读完整规范,但规范的设置方式允许浏览器尽可能多地使用其缓存。

【讨论】:

    【解决方案2】:

    我只是为了好玩而在 Chrome 和 Firefox 中测试了这个

    当我在 Google 搜索页面上的 Chrome 中按回时,没有请求发生。浏览器从缓存中拉取。

    在 Firefox 中,我实际上从 Google 获得了 204 No Content,路径为 http://clients1.google.ca/generate_204

    我使用Charles 代理发现了这个,所以它不科学:)

    【讨论】:

      猜你喜欢
      • 2013-03-02
      • 2021-03-24
      • 1970-01-01
      • 2011-02-17
      • 1970-01-01
      • 2017-06-29
      • 2013-01-10
      • 2010-09-14
      • 2011-08-06
      相关资源
      最近更新 更多