`

发布swf更新版本时客户端Flash缓存问题

 
阅读更多

本文转载自 http://uh.9ria.com/space-63908-do-blog-id-4777.html

   用Flex开发应用,当更新了swf,部署到服务器后,最终用户还需要清空flash缓存后才能看到后台已经发布的最新版本。这里是一个解决方法:

其实这都是因为缓存的问题,大家都知道,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">


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

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

分享到:
评论

相关推荐

    Flash+XML 图片浏览器源码

    运行photo.swf 文件 flash图片浏览器,连续载入所有页图片到缓存中,加快客户端浏览速度 自适应屏幕分辨率 gallery.xml 不带大图片连接 linkphoto.xml 修改后的,可以连接原始大图并可以取图片标题字段

    asp.net知识库

    2分法-通用存储过程分页(top max模式)版本(性能相对之前的not in版本极大提高) 分页存储过程:排序反转分页法 优化后的通用分页存储过程 sql语句 一些Select检索高级用法 SQL server 2005中新增的排序函数及应用 ...

    java开源包1

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包11

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包2

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包3

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包6

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包5

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包10

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包4

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包8

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包7

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包9

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包101

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    Java资源包01

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    JAVA上百实例源码以及开源项目源代码

    像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...

    JAVA上百实例源码以及开源项目

    像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...

    ActionScript开发技术大全

    8.2.1FlashPlayer的调试版本 152 8.2.2在FlashCS3IDE中调试 152 8.2.3在FlexBuilder3中进行调试 155 8.3处理ActionScript3.0中的异常 160 8.3.1使用try…catch…finally语句 160 8.3.2throw语句主动抛出异常 162 ...

Global site tag (gtag.js) - Google Analytics