Flash AS3套接字-策略文件

Flash AS3套接字-策略文件,flash,sockets,policyfiles,Flash,Sockets,Policyfiles,我有一台小型服务器在端口843上监听 然后,我发送以下信息: <cross-domain-policy> <allow-access-from domain="*" to-ports="*"/> </cross-domain-policy> 我有一个单独的服务器监听端口4600,它希望从客户端获取字符255,但从未发送。端口4600上的连接已建立,但数据从未发送 端口843上的微型服务器正在成功地从客户端获取连接并发送策略文件 所以要么是策略文件提交有问题(

我有一台小型服务器在端口843上监听
然后,我发送以下信息:

<cross-domain-policy>
<allow-access-from domain="*" to-ports="*"/>
</cross-domain-policy>
我有一个单独的服务器监听端口4600,它希望从客户端获取字符255,但从未发送。端口4600上的连接已建立,但数据从未发送

端口843上的微型服务器正在成功地从客户端获取连接并发送策略文件

所以要么是策略文件提交有问题(我不知道如何在AS3中进行检查)。或者选项2是由于某些原因,在初始连接过程中数据丢失

另外,如果我没有在端口843上运行迷你服务器,端口4600上的服务器将接收策略文件请求(根据AS3协议)


如果您能告诉我在这里检查什么,我将不胜感激。我不确定出了什么问题。我一直在通过flash调试器执行所有操作,直到现在才需要策略文件请求之类的东西。

您可能需要带doctype的完整XML。此外,您可能还需要实际限制端口。试试这个:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy><allow-access-from domain="*" to-ports="4600" /></cross-domain-policy>


编辑:尝试
m_socket.addEventListener(Event.CONNECT,connectHandler)
然后创建
connectHandler
函数来发送数据。

谢谢您的建议。可悲的是,在做了这些改变之后,我仍然有同样的问题。就是这样!为连接添加事件侦听器,然后发送数据将确保在等待发送策略文件时不会丢失任何数据。谢谢经过一些调整后,我可以确认初始数据丢失了,但是如果几秒钟后我重新发送相同的数据,它就可以正常工作了。是否有回调来知道何时接受了策略文件,并且通过套接字发送数据是安全的?
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy><allow-access-from domain="*" to-ports="4600" /></cross-domain-policy>