相当蹩脚的问题:
我有一个xml文件,每天都在服务器上更新。 Chrome不断获取原始缓存的xml文件,而不是更新版本。该文件托管在azure上。
我是如何强制Chrome获取最新版本的? (显然,要求用户清除缓存不是一个选项)
答案 0 :(得分:2)
将xml文件和其他类似文件放在公共文件夹中。配置文件夹,以便与文件夹中的任何内容一起发送以下标题: -
cache-control:no-cache
这会导致Chrome浏览器在使用之前重新验证任何缓存的内容。
答案 1 :(得分:1)
我会将某些内容附加到URL作为虚拟查询字符串,以确保没有浏览器将其视为同一资源,从而强制它们加载新版本。您无需修改服务器端脚本,因为它可以安全地忽略新的查询字符串。
对于这个每天更新的特定应用程序,在请求中附加今天的日期是有意义的:
/path/to/my.xml?d=20100214
这样,即使浏览器缓存了特定的XML文件,明天查询字符串也会不同,资源将再次被提取。
不幸的是,我对Silverlight本身一无所知,但您似乎已经能够加载该文件了。