swf 更新后,客户端不需要清空缓存即可查看最新版本

我们在用Flex开发应用的时候,每次修改了swf,上传到服务器后,测试都需要清空缓存。这样很麻烦,另外如果以后版本更新了,但是用户没有清空缓存的话仍然看不到最新版本。所以在这里说一下解决方案。

 

其实这都是因为缓存的问题,大家都知道,Flash插件也使用与HTML页面类似的方法缓存 swf文件,节省我们每次导入swf文件的时间,这是个很好的策略,但是对于我们有新版本swf文件发布的时候,这个缓存的机制就不怎么可爱了,swf中 有没有什么特别的参数可以不缓存,而且对于Flex这样的胖客户端,不缓存对于用户体验也是不利的,这可如何是好?!

还好问题还是有解决的办法的,我们可以从缓存的根本下手,一般缓存都是基于URL的,也就是说对同一个URL的访问,有一个缓存的机制在这里,而对于不同的URL,也就必须读入新的swf重新缓存了。

具体解决方案如下:

1.在Flex的模板文件夹下面的index.template.html文件是最终生成html的模板文件,修改这个页面的缓存方式为“不缓存” (因为html页面的数据不大,所以每次都读取Server中的内容是可以容忍的)。在此文件的<head></head>之间 加上如下代码:

 

 <META HTTP-EQUIV="pragma" CONTENT="no-cache">
  <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
  <META HTTP-EQUIV="expires" CONTENT="0">

注意:<head></head>之间原有的代码不要修改!

2.修改AC_OETags.js文件。在此文件中找到AC_FL_RunContent这个方法,这个方法会调用AC_GetArgs方 法,AC_GetArgs方法的第二个参数默认是".swf"。将这个参数修改为".swf?ver=1.0"。问号后面的参数不是固定的,可以自己随便 起,目的就是把url区分开,从而达到用户每次请求看到的都是最近版本的目的。

以上两步做好之后编译保存,如果以后swf文件被修改了,只需要修改服务器上的AC_OETags.js文件就可以了。修改方法按照第二步操作。

随着Adobe Flash Player官方停止更新和安全支持,使用珍藏版播放器播放SWF文件时需要特别注意安全风险。首先,珍藏版播放器可能无法获得最新的安全更新和漏洞修复,这使得用户在使用时面临恶意软件感染和数据泄露的风险。为了尽可能安全地使用,建议遵循以下步骤: 参考资源链接:[珍藏版Adobe Flash Player,独立播放器支持SWF文件](https://wenku.csdn.net/doc/6uo8fuum2u) 1. 确保你的操作系统和防病毒软件都是最新版本,以便它们能够提供最新的安全保护。 2. 避免从不可靠来源下载SWF文件或播放器安装包,只从官方或可信网站获取资源。 3. 在打开或播放SWF文件前,使用杀毒软件进行全面扫描,确保文件没有携带病毒或恶意软件。 4. 如果可能,使用沙箱环境来运行播放器,这样即使播放器受到攻击,也不会影响到系统其他部分。 5. 不要随意安装或更新任何与播放器相关的组件,因为这些组件可能包含恶意代码。 6. 注意隐私保护,关闭或限制播放器收集个人信息的功能,例如IP地址、浏览器信息等。 7. 考虑到Adobe Flash Player已经不再提供安全更新,建议将SWF文件转换为现代浏览器支持的格式,例如HTML5,以减少安全风险。 8. 尽量减少使用Flash Player播放器的频率,随着技术的发展,越来越多的替代方案可以提供相同甚至更好的体验,例如使用HTML5、WebGL或其他现代网络技术。 以上步骤可以帮助你在使用珍藏版Adobe Flash Player播放SWF文件时提高安全性,但仍然强烈建议寻找和采用更安全、更新的解决方案,以完全避免潜在风险。 参考资源链接:[珍藏版Adobe Flash Player,独立播放器支持SWF文件](https://wenku.csdn.net/doc/6uo8fuum2u)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值