【问题标题】:Post/Redirect/Get in Webkit causes a full page reloadWebkit 中的 Post/Redirect/Get 会导致整个页面重新加载
【发布时间】:2010-06-25 01:17:28
【问题描述】:

似乎在基于 Webkit 的浏览器(Chrome 和 Safari)中,当在服务器上执行 Post/Redirect/Get 时,会重新下载整个页面(html + images + css 等)。它看起来就像您重新加载了页面一样。

Google Chrome 帮助中发布了一个问题(以及某种解决方案):http://www.google.com/support/forum/p/Chrome/thread?tid=72bf3773f7e66d68&hl=en

有没有人有更优雅的方式来做到这一点?我正在使用 ASP.NET MVC,并且不希望编写返回 Javascript 或基于 UserAgent 的实际页面的自定义重定向结果。

我是否应该希望并等待 Webkit 改变其行为?

【问题讨论】:

  • 如果你为你的静态资源设置一个 Far-Future Expires 标头,会有帮助吗?
  • 它似乎忽略了任何可能存在的缓存机制。看起来它的行为方式与用户单击“重新加载”按钮的方式相同。

标签: asp.net-mvc safari google-chrome webkit post-redirect-get


【解决方案1】:

这是一个错误。到目前为止,我看到的唯一“解决方法”是使用 Refresh 标头而不是 Location 标头进行重定向。这远非理想。

Bug 38690 - Submitting a POST that leads to a server redirect causes all cached items to redownload

此外,此问题与“Full page reload on Post/Redirect/Get ignoring cache control”重复。

【讨论】:

  • 非常感谢您的意见和关注这个问题。希望它在这些日子里得到修复。
【解决方案2】:

尝试设置Cache-Control: public 标头。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-13
    相关资源
    最近更新 更多