首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >crossdomain.xml阻止缓存

crossdomain.xml阻止缓存
EN

Stack Overflow用户
提问于 2011-02-10 18:41:14
回答 4查看 3.3K关注 0票数 6

更改域名后,闪存应用程序是托管的,我应该改变crossdomain.xml文件。该服务器托管在由flash应用程序使用的api- crossdomain.xml上。我发现flash使用浏览器缓存中的crossdomain.xml。有什么技巧可以让闪存不从缓存中获取crossdomain.xml吗?也许有什么参数可以在对象标签中调用flash的时候传递给flash?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-08-17 00:52:19

恼人的问题--毫无疑问。

首先:我喜欢缓存--只要我能控制。这是我如何获得对crossdomain.xml缓存的控制:

比方说,我们有一个flash应用程序,它需要来自不同服务器的一些输入。在我的示例中,我们将其配置为flashvar dataSrc=http://www.company.com/data/calendar.xml

所以闪电侠在找www.company.com/crossdomain.xml ..。它被加载一次,然后从用户浏览器高速缓存中取出,直到他手动刷新它。

解决方案是更改crossdomain.xml所在的子域:

例如,确保(!) noCache.company.com/指向公司的documentRoot。Flashvar被修改为dataSrc=http://noCache.company.com/data/calendar.xml。实际上,您正在处理与以前相同的文件。

Flash正在查找将立即从服务器获取的noCache.company.com/crossdomain.xml ,因为没有该uri的缓存文件。

这取决于你的幻想..。如果你允许像noCache_{numeric_value}这样的子域,你可以通过访问http://noCache_{week_of_year}.company.com/data/calendar.xml很容易地处理你自己的TTL ...

您也可以在每次更改crossdomain.xml时递增该数值。

票数 5
EN

Stack Overflow用户

发布于 2011-09-13 22:25:21

使用以下apache指令指定文件的缓存策略:

代码语言:javascript
复制
<Directory /var/www/mysite>
  <FilesMatch "crossdomain.xml">
    Header set Cache-Control "max-age=86400, public, must-revalidate" 
  </FilesMatch>
</Directory>
票数 1
EN

Stack Overflow用户

发布于 2011-02-11 23:59:12

如果我不想缓存xml文件,我会将随机数附加到xml文件的末尾。var myXMLURL:String = "myXML.xml?r=“+ Math.random()*1000;

浏览器将其视为不同的文件,例如。myXML.xml?r=645 / myXML.xml?r=239

我不确定这是否适用于crossdomain.xml文件,但应该值得快速尝试一下。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4956058

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档