我使用ajax调用来调用php脚本,该脚本通过睡眠等待40秒,然后输出RELOAD。在JavaScript中,将检查输出为RELOAD,如果是,则再次启动调用。
这在我使用的每一页上都很好。但是在Firefox中,有一个具体的问题。
我在这个页面上做那些调用,然后我点击一个链接到另一个页面。在那之后,我通过点击历史(回)按钮返回。在这种情况下,调用确实启动了,但是firefox似乎缓存了结果并立即输出了RELOAD。这会导致调用,这些调用只需几毫秒即可加载,而我没有得到任何实际的内容。它甚至没有连接到服务器(在ajax调用继续进行时,我更改了php文件,但没有产生任何效果)。
因此,Firefox似乎只在使用back按钮(或javascript:history.back())的情况下才使用缓存输出。如果我正常加载页面(通过链接或在地址栏中输入url ),调用就会正确地到达服务器并获取实际内容。
有什么方法可以用PHP或JavaScript覆盖这种行为吗?我正在使用jQuery.ajax(),并且设置了"cache:false"-option。
谢谢你的帮助!
发布于 2012-07-30 07:21:32
我只是通过在URL中添加一个随机数来解决这个问题。这个解决方案确实有效,但它根本不是一个非常漂亮的解决方案。
https://stackoverflow.com/questions/11687752
复制相似问题