Flex编码随笔
1、CSS定义最好放在application里面。
2、数据源是数组数据时,最好把数组转换为ArrayCollection.
3、List、CheckBox等控件的HttpService Params传参处理:
var params:URLVariables = new URLVariables(); var ar:Array=new Array(); ar.push("www"); ar.push("eee"); params.users=ar;
出来的查询字符串是:
&users=www&users=eee
4、为了防止Flex的缓存清楚问题,可以再HttpService的回调函数最后调用HttpServiceObject.ClearResult()这是我从http://shanky.org/zh-CN/tag/httpservice/ 上得到的一个解决方案(下面的文章由于汉化原因,实际代码不可用)
其中一名与会者问我的问题,问题的Flex HTTPService和IE浏览器缓存。 我答应提供详细的解决这个问题,所以在这里:
问题 :重复HTTPService要求时,从软硬度(运行在一个实例的IE浏览器)许多倍最终没有外部的HTTP调用。 看来这些数据是从缓存。
原因是 : Flash播放器搭载在浏览器上进行的HTTP调用。 IE浏览器缓存的响应的HTTP GET要求和发生的相同的URL传回的响应缓存。
解决方案 :这个问题可以得到解决或者在服务器端或客户端。
服务器端的解决办法 :设置HTTP头的响应,以避免返回响应缓存。
在HTML : (在标题)
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"> <META HTTP-EQUIV="expires" CONTENT="0">
在PHP : (在脚本)
< /p>
标题( “缓存控制:无缓存,必须重新” ) ;
标题( “截止日期:星期一, 1997年7月26日5时00分00秒格林尼治标准时间” ) ;
在JSP中: (前书面向输出流)
response.setHeader ( “缓存控制” , “无缓存” ) ;
response.setDateHeader ( “到期” , 0 ) ;
客户端的解决办法 : ( 1 )的HTTP邮政电话-只的HTTP GET要求是从缓存或( 2 )确定的HTTP GET网址是不同的每一次。
( 1 )的HTTP后呼吁-
设置方法= “ post ”和呼吁妥善处理
( 2 )附加了一个独特的参数的HTTP GET要求,这样的网址是不同的每一次。 一种独特的时间戳记是一个很好的选择。
下面的代码示例,可以做的工作:
无功timeStampForNocache :日期=新的日期( ) ;
params.noCacheControlVar = timeStampForNocache.getTime ( ) 。 toString ( ) ;
我已命名的参数“ noCacheControlVar ” 。 您可以将它命名为任何您请。 这个名字并不重要。 要紧的是,时间戳使独特的HTTP GET的URL 。
5、界面初始化时的多HttpService结果数据如果之间有条件关系,那可以用事件响应链来解决这个问题。因为FLex是单线程,同步标志的方法可能不可行。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!