现在的位置: 首页 > 综合 > 正文

[Socket+AMF3]Socket安全策略问题的解决

2013年04月27日 ⁄ 综合 ⁄ 共 738字 ⁄ 字号 评论关闭

 Flash Player安全策略问题和端口问题对于Socket(XMLSocket)的web开发一直都是很头痛的问题,经过昨天一天的研究,终于找到了解决方案了,我把解决方法在这里作一下简述!
    其实Flash帮助文件也做了说明:http://help.adobe.com/zh_CN/AS3LCR/Flash_10.0/flash/system/Security.html#loadPolicyFile()
。就在调用socket.connect方式之间先进行:Security.loadPolicyFile("xmlsocket://localhost:110");来加载安全策略内容。Player将向服务端发送请求<policy-file-request/>
,并以 null 字节终止。而服务端也将返回以 null 字节终止的安全策略内容。
    安全策略文本内容如下:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd
">
<cross-domain-policy>
   <site-control permitted-cross-domain-policies="all"/>
   <allow-access-from domain="*" to-ports="*" />
</cross-domain-policy> 
在服务端就要作一下与AMF3的区别,根据检查请求中是否有"<policy-file-request/>
",然后对应返回安全策略文本内容,注意是返回内容必须是以 null 字节终止!

抱歉!评论已关闭.