我正在编写Chrome浏览器的扩展程序(并希望将其移植到Firefox)。该扩展程序通过XMLHttpRequest从我的服务器下载配置文件 - 一个xml文件。我发现它只会下载一次文件,随后的每个调用似乎都使用缓存的原始版本。无论我是否更改服务器上的文件都没有关系。
我读到可以尝试:
xmlhttp.setRequestHeader('Pragma','Cache-Control: no-cache');
因此我已经这样做了,但似乎没有任何区别。唯一能获取新文件的方法似乎是删除浏览器缓存 - 这显然不是对我不断增长的用户的解决方案。
这似乎是一个我不会是第一个遇到的问题 - 鉴于缓存规则似乎支持这种无法轻易避免的策略,我的问题是,有什么更好的设计?有我不知道的最佳实践吗?我应该以某种方式进行推送而不是拉取吗?
我读到可以尝试:
xmlhttp.setRequestHeader('Pragma','Cache-Control: no-cache');
因此我已经这样做了,但似乎没有任何区别。唯一能获取新文件的方法似乎是删除浏览器缓存 - 这显然不是对我不断增长的用户的解决方案。
这似乎是一个我不会是第一个遇到的问题 - 鉴于缓存规则似乎支持这种无法轻易避免的策略,我的问题是,有什么更好的设计?有我不知道的最佳实践吗?我应该以某种方式进行推送而不是拉取吗?
url += '?' + (new Date()).getTime()
- Midas