您的位置:首页 > 其它

Flex 4.0解决Session问题的山寨版方法

2012-12-29 15:54 691 查看
  Flex 4.0中好象不支持设置URLRequest请求头,弄了半天,都没有成功,据说之前的版本可以用,晕。

  最后没有办法,只好想了一个山寨版的方法,来弥补Flex写的SWF不支持会话的问题。

  首先,修改服务器Web容器获取Request对应会话的方法,让该方法同时支持从Cookie标题和Request对象取会话ID的功能,但优先处理来自Cookie的SessionID。

  其次,由于document.cookie在FireFox等其他浏览器中支持不是太好,不知道为什么,取的时候总是空的,而且据说这个document.cookie还是取IE的永久Cookie,晕。后来决定不用,而采用程序来取。具体做法有点土:使用Ajax,在页面载入时向服务器请求当前Cookie值(也就是那个SessionID值),然后保存到一个变量中,之后再创建SWF,同时把这个Cookie作为参数传给SWF。

  最后,在Flex中把这个Cookie作为请求参数添加到要请求的URL后面,再发送请求就OK了。这里就是要求Cookie字符串不要包含回车之类的特殊字符。

  试了一下,兼容性还蛮好的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: