Nov 11

火狐firefox下用flash上传文件无法获取到会话cookie的问题 不指定

Heck , 12:28 , 编程杂谈 , 评论(0) , 引用(0) , 阅读(1873) , Via 本站原创 | |
         之前有在负责开发一个特性,用flash上传文件,为了记录是谁上传的,需要从cookie里获取到已登录的用户身份。
在IE下,上传没有问题,获取用户身份也没有问题。但是在firefox下,问题就来了,上传文件是没有问题的,但是服务器无法从cookie里获取到用户身份,抓包发现,cookie根本就没有报上来,杯具啊!

后来搜索发现是这个问题导致的:
IE浏览器下ActiveX模式下的Flash插件使用的是IE的链接池,所以获取的Session和Cookie是一致的,而在Firefox下的是Plugin模式,使用自有的链接,没有使用FF的链接池,所以FF下便产生了两个不同的链接,所以Session和Cookie找不到了。
看来,firefox下用flash上传,拿不到当年会话的cookie了,那怎么办?方案是前端调用flash时透传给flash文件,然后flash上传时,把这个cookie上报给服务端。


var swfUrl="http://*****.swf?uin="+getcookie("cookiename");

当然,另外一种最简单的方法就是把当前的SessionId传给flash。


来源:Heck's Blog
地址:http://www.hecks.tk/firefox-upload-cookie-problem/
转载时须以链接形式注明作者和原始出处及本声明,否则将追究法律责任,谢谢配合!
Tags: , , , ,