我正在使用 ajax 调用来调用 php 脚本,该脚本通过 sleep 等待 40 秒,然后输出RELOAD
。在 JavaScript 中,检查输出是否为RELOAD
,如果是,则再次开始调用。
这在我使用的每个页面上都很好用。但在 Firefox 中,在特定情况下存在一个问题。
我在这个页面上进行这些调用,然后我点击一个链接进入另一个页面。之后,我通过单击历史记录(后退)按钮返回。在这种情况下,调用确实开始了,但 Firefox 似乎已经缓存了结果并立即输出RELOAD
。这导致调用只需几毫秒即可加载,并且我没有得到任何实际内容。它甚至没有连接到服务器(我更改了 php 文件,而 ajax 调用继续进行,但没有任何效果)。
因此,Firefox 似乎仅在您使用后退按钮(或同时javascript:history.back()
)的情况下才使用缓存输出。如果我正常加载页面(通过链接或在地址栏中输入 url),调用确实会正确到达服务器并获取实际内容。
有没有办法可以从 PHP 或 JavaScript 覆盖这种行为?我正在使用jQuery.ajax()
并且我已经设置了“ cache:false
”选项。
感谢您的帮助!