Google Chrome ERR_CACHE_MISS 解决方法

问题描述 投票:0回答:3

每次我导航回到在 Chrome 中提交(发布)表单的页面时,我都会看到一个白色页面,显示以下错误:

ERR_CACHE_MISS

我做了一些搜索,但找不到任何真正解决这个问题的方法。

如何防止此错误?

javascript php html forms google-chrome
3个回答
1
投票

我用这个技巧解决了这个问题。当检测到 POST 数据时,使用标头位置(GET 方法)再次重新加载。返回按钮现在重定向到 GET 而不是 POST,并且不会出现问题。

当您需要使用发布的数据时,只需将其存储到会话中以供下次应用程序使用,当再次加载index.php时。

index.php

if (isset($_POST[...
{  
   // - 1st load

   $_SESSION["posted-data"] = $_POST;
   header('Location:index.php?pass=...');
}

if (isset($_SESSION["posted-data"]))
{
   // - 2nd load

   ... code to process ...
   unset($_SESSION["posted-data"])
}

在POST方法之后,页面被加载了两次,但是当你在程序开始时解析时,它无法被注意到。您只需要组织数据以进行双重组装。首先 - 解析传入并准备在 GET 重新加载后传输。 (即使用会话)。


0
投票

这可能不是最好的解决方案,但我使用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);
代替。

欢迎任何建议/更好的解决方案...


0
投票

我对计算机的了解不够,无法进行任何这些修复。我的女儿帮助我解决任何问题。抱歉我无能为力。我已尽力回答问题。

© www.soinside.com 2019 - 2024. All rights reserved.