每次我导航回我在Chrome中提交(发布)表单的页面时,都会显示一个白页,显示以下错误:ERR_CACHE_MISS
我做了一些搜索,但找不到任何真正解决这个问题的方法。
如何防止此错误?
答案 0 :(得分:1)
我使用这个技巧解决了这个问题。检测到POST数据时,使用标头位置(GET方法)进行另一次重新加载。后退按钮现在重定向到GET而不是POST,并且不会出现问题。
当你需要使用发布数据时,只需再次加载index.php,就可以将其存储到下一个应用程序的会话中。
<强>的index.php 强>
bbox
在POST方法之后,页面加载了两次,但是当你在programm的开头解析时,它就不会被注意到了。您只需要组织数据进行双重组装。首先 - 解析传入并准备在GET重新加载后进行传输。 (即使用SESSION)。
答案 1 :(得分:-1)
它可能不是最佳解决方案,但我使用Javascript来防止出现此错误。
我将history.replaceState({}, '', 'yourPage.php');
添加到了提交按钮的onclick=""
属性中,请参阅此示例:
<form action="yourPage.php" method="post">
<input type="hidden" name="value" value="someValue">
<input type="submit" name="sumitForm" onclick="history.replaceState({}, '', 'yourPage.php');" value="Pas aan">
</form>
这样做会将浏览器历史记录中的最后一页替换为此页面,这样当您向后导航时yourPage.php
将被调用,ERR_CACHE_MISS
错误不再出现。
如果当前页面可能包含get变量,则可以使用history.replaceState({}, '', document.referrer);
代替。
欢迎任何建议/更好的解决方案......