您的位置:首页 > Web前端

Flex中调用FileReference.download()方法的限制【已解决】

2011-04-20 13:41 399 查看
[2011-04-21 02:11:24]

问题解决。原因在于Flash Player 10的安全限制,只能确保下载由用户交互事件发起,暂时绕不过去。即使按照上面两个帖子的方法,使用回调函数或动态添加侦听事件等都没法生效,可能是水平有限吧。

搞一天了,最后还是总结下几种解决方案:

1、在Flash Player 10 + FileReference下,要解决只能确保下载由用户交互事件发起,比如弹出确认框由用户点击确认后再下载。

2、Flash Player + Octet-stream。不用FileReference。

3、Flash Player 9 + FileReference。无安全限制。

参考信息:

http://forums.adobe.com/message/2848670

今天准备实现一个附件管理程序的一个功能,整体思路是点击下载按钮后,先与服务器交互得到附件的实际下载URL,再使用FileReference.download()下载至本地。

测试中出现问题,错误提示:Error: Error #2176: 某些动作(如显示弹出窗口的动作)只能通过用户交互来调用,例如,单击鼠标或按下按钮。

经查问题出现在得到附件下载地址后,调用FileReference.download()准备打开文件下载对话框时。Google了几个小时,也做了一堆测试,还是没得到解决。先把问题扔着吧,改天再研究。解决方法见下。

参考信息:

http://topic.csdn.net/u/20100928/12/ad4dfa6a-50a3-4af8-aa53-ac9e383e19d9.html

http://bbs.airia.cn/home-space-uid-80501-do-blog-id-756.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: