Socket安全策略问题的解决

本文解决了FlashPlayer在使用Socket(XMLSocket)进行web开发时遇到的安全策略问题和端口问题。通过调用Security.loadPolicyFile方法并设置相应的安全策略文件,实现跨域资源的合法访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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 字节终止!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值