您的位置:首页 > 其它

Flash Socket 安全沙箱冲突问题解决

2010-09-10 17:45 399 查看
这几天写一个Wb长连接的Demo,在使用Flash Socket时出现“Error #2048: 安全沙箱冲突:http://localhost:3000/FlashSocket/FlashSocket.swf 不能从 127.0.0.1:3333 加载数据。”的问题,花了不少时间,总算是解决了!

参考资料:

AS语言参考: http://help.adobe.com/zh_CN/AS3LCR/Flex_4.0/flash/net/Socket.html

Flash Player安全性: http://livedocs.adobe.com/flash/9.0_cn/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000347.html

问题分析:

1、Flash安全沙箱问题

解决方案:

1>在Flash中设置域访问范围:[code]Security.allowDomain(www.example.com)或者
Security.allowDomain("*")


2>使用服务器Socket发送安全策略文件给FlashSocket:


<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<!-- Policy file for xmlsocket://socks.mysite.com -->
<cross-domain-policy>
<allow-access-from domain="*" to-ports="9010" />
</cross-domain-policy>

2、注意:如果C# Socket通信出现问题也可能导致“安全沙箱问题”,可以C#建立一个客户端与服务器分别在本地和服务器上进行测试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: