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

本文介绍了如何通过加载安全策略文件解决FlashPlayer在使用Socket时遇到的安全限制问题。通过调用Security.loadPolicyFile方法并向服务器发送特定请求,使得FlashPlayer能够获取到服务器返回的安全策略内容。

摘要生成于 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、付费专栏及课程。

余额充值