Chrome - 确认重新提交表单 - 不同的行为
Chrome - Confirm Form Resubmission - Different behaviors
在频繁使用 POST
请求的商业 Web 应用程序中,需要执行 history.go(-1)
来触发返回导航。正如其他人所经历的那样,我得到 -
Confirm Form Resubmission ERR_CACHE_MISS
Chrome 中的错误。但是,在 Firefox 中同样可以正常工作(这不是重复的,请继续阅读)。
使用POST
请求渲染内容确实是导致上述问题的原因(没有使用Post/Redirect/Get设计模式)。
但是,在寻找替代解决方案时,我们发现在某些网站/应用程序中可以在 Chrome(缓存命中)中返回,而在某些网站中它会失败。我检查了所有来自成功站点的 HTTP headers
,看起来 HTTP headers
没有任何区别。
是否可能是浏览器根据 Web 应用程序使用的 SSL 证书采取不同的行为,或者在某些网站中反向导航工作的原因可能是什么?
工作网络应用程序示例:
http://gmail.com/ - 输入一些随机电子邮件。点击下一步。多次输入错误密码并使用浏览器后退按钮返回。
https://support.hostgator.com/ - 在搜索框中输入一些随机文本(重复多次)。使用浏览器后退按钮返回。
POST 失败的 Web 应用程序中使用的请求:
POST /post3.jsp HTTP/1.1
Host: 192.168.1.111
Connection: keep-alive
Content-Length: 18
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Origin: https://192.168.1.111
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.99 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Referer: https://192.168.1.111/post2.jsp
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.8
确定在上述工作流程中 Chrome 后退导航失败,除非 SSL Certificate
在 HTTPS
通信中使用的是有效、可信的证书。
如果您使用的是自签名证书,请将 CA 证书添加为 Trusted Root Certification Authorities
,一切都会按预期进行。
在频繁使用 POST
请求的商业 Web 应用程序中,需要执行 history.go(-1)
来触发返回导航。正如其他人所经历的那样,我得到 -
Confirm Form Resubmission ERR_CACHE_MISS
Chrome 中的错误。但是,在 Firefox 中同样可以正常工作(这不是重复的,请继续阅读)。
使用POST
请求渲染内容确实是导致上述问题的原因(没有使用Post/Redirect/Get设计模式)。
但是,在寻找替代解决方案时,我们发现在某些网站/应用程序中可以在 Chrome(缓存命中)中返回,而在某些网站中它会失败。我检查了所有来自成功站点的 HTTP headers
,看起来 HTTP headers
没有任何区别。
是否可能是浏览器根据 Web 应用程序使用的 SSL 证书采取不同的行为,或者在某些网站中反向导航工作的原因可能是什么?
工作网络应用程序示例:
http://gmail.com/ - 输入一些随机电子邮件。点击下一步。多次输入错误密码并使用浏览器后退按钮返回。
https://support.hostgator.com/ - 在搜索框中输入一些随机文本(重复多次)。使用浏览器后退按钮返回。
POST 失败的 Web 应用程序中使用的请求:
POST /post3.jsp HTTP/1.1
Host: 192.168.1.111
Connection: keep-alive
Content-Length: 18
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Origin: https://192.168.1.111
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.99 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Referer: https://192.168.1.111/post2.jsp
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.8
确定在上述工作流程中 Chrome 后退导航失败,除非 SSL Certificate
在 HTTPS
通信中使用的是有效、可信的证书。
如果您使用的是自签名证书,请将 CA 证书添加为 Trusted Root Certification Authorities
,一切都会按预期进行。