我目前已经开始了一个包括 AJAX 的项目,但遇到了一个问题。使用 Microsoft Edge(和 Internet Explorer)时,它不会更新数据,除非我关闭整个页面并再次打开它,或者打开我的 PHP 文件,通过 AJAX 从中发送数据。
有人不知道如何使用 PHP 和/或 Javascript 解决这个问题吗?
提前致谢
最佳答案
“快速修复”是使用 $.ajax 方法的 cache: false 选项,但如果您可以控制服务器,这确实不是解决此问题的正确方法。相反,您应该让 php 在您不想缓存的服务上返回一个无缓存 header ,并在您想要缓存的服务上返回一个缓存 header 。
header("Cache-Control: no-cache, no-store, must-revalidate"); // HTTP 1.1.
header("Pragma: no-cache"); // HTTP 1.0.
header("Expires: 0"); // Proxies.
上面的代码取自 BalusC 的回答:How to control web page caching, across all browsers?
否则,您应该有一个 htaccess 来指定应缓存哪些文件,例如不经常更改的静态资源(.html、.js、.css 等)
关于javascript - 如何使用 PHP 或 Javascript 删除 Microsoft Edge 的缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33019108/