我做在Django的项目,并使用Django的-CSS( http://github.com / dziegler / Django的CSS )和萨斯( http://sass-lang.com/)。该萨斯文件使用Django的CSS开发服务。我想写一个JavaScript程序,将每隔一秒检索CSS资产。这样做的目的是为了让设计师可以编辑萨斯文件,点击保存,并查看结果在浏览器中直接不用切换应用程序,打的刷新。

基本上我需要JavaScript来强制浏览器重新下载某些文件没有做刷新页面的方式。这是可能的?

有帮助吗?

解决方案

的最简单的解决方法通常是一个唯一的参数添加到URL,所以经常只是使用时间戳

var timestamp = (new Date()).getTime();
url += '?time=' + timestamp;

只是要小心,如果你的请求已经有了参数,那么你需要添加&time=' + timstamp代替。

浏览器不能因为每个请求看起来独特缓存请求。

其他提示

不是所有的高速缓存将缓存与查询串的内容。

史蒂夫Souders的建议“...避免对可缓存资源的查询字符串”。他发现,在这种情况下请求的5-20%,不会被缓存。尤其是查询字符串不会在所有的工作与一些的CDN缓存失效。

更好的方法是生成一个MD5为每个释放e.g的JavaScript文件名。

{path to script file}/filename-{md5 hash}.js

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top