Python Actionscript flex套接字和telnet

Python Actionscript flex套接字和telnet,python,apache-flex,actionscript-3,sockets,telnet,Python,Apache Flex,Actionscript 3,Sockets,Telnet,我正在尝试制作一个flex应用程序,它从telnet连接获取数据,我遇到了一个奇怪的问题 简单介绍一下,我想从通过套接字公开数据的进程中读取数据。因此,如果在shell中输入telnet localhost 8651,我收到了xml,然后连接就关闭了(我得到了以下由外部主机关闭的连接。) 无论如何,我发现了一个简单的flex在线客户端,它本质上是一个telnet客户端,人们希望它能工作,但一切都遵循墨菲定律,没有任何东西能工作 现在,我在每个事件处理程序和我能想到的所有地方都打印了消息。当我连接

我正在尝试制作一个flex应用程序,它从telnet连接获取数据,我遇到了一个奇怪的问题

简单介绍一下,我想从通过套接字公开数据的进程中读取数据。因此,如果在shell中输入telnet localhost 8651,我收到了xml,然后连接就关闭了(我得到了以下由外部主机关闭的
连接。

无论如何,我发现了一个简单的flex在线客户端,它本质上是一个telnet客户端,人们希望它能工作,但一切都遵循墨菲定律,没有任何东西能工作

现在,我在每个事件处理程序和我能想到的所有地方都打印了消息。当我连接到套接字时,不会发生任何事情,即使连接或关闭处理程序也不会触发任何事件处理程序,如果我执行以下操作,socket.connected将返回false!我没有错误,尝试捕获不会引发异常。我不知道出了什么问题

        socket.connect(serverURL, portNumber);
        msg(socket.connected.toString());
telnet有什么我不知道的地方吗?是什么导致了它不起作用。更有趣的是,为什么这些事件都没有被炒鱿鱼

另一件有趣的事情是,我有一些python代码可以做同样的事情,并且它能够恢复xml

下面是有效的python代码

  def getStats(host, port):
 sock = socket.socket()
 sock.connect((host, port))
 res = sock.recv(1024*1024*1024, socket.MSG_WAITALL)
 sock.close()
 return statFunc(res)

所以我问你出了什么问题!!!!!!flex处理套接字的方式是否存在一些固有的问题?

您在哪个安全沙箱中运行此功能?如果您将其作为嵌入网页中的flash应用程序运行,那么这很可能是一种安全违规行为

可以使用XMLSocket.connect()方法 仅连接到同一计算机中的计算机 SWF文件所在的域。 此限制不适用于SWF 从本地磁盘上运行的文件。(本 限制与 URLLoader.load()的安全规则) 连接到正在运行的服务器守护程序 在域以外的域中 SWF驻留,您可以创建 服务器上的安全策略文件 允许特定用户访问 域名


出于安全原因,您要连接的主机必须在端口943(或尝试连接的同一端口)上提供闪存套接字策略请求。此页面显示如何在尝试连接到的服务器上设置:

在开发过程中,通常可以方便地将SWF添加到安全沙箱中运行的文件列表中,以减少提供套接字策略文件的需要


目前,所有设备都在同一台机器上。我使用的不是XMLSocket而是Socket。至于安全沙箱,我不确定。这是我第一次尝试flex。即使这是一个安全问题,我不应该得到一些错误或例外吗?我可以做一个跨域策略文件,但我不知道把它放在哪里。就像我说的,所有的东西都在硬盘上。好吧,所以我想出了一些办法让我前进,但仍然不能解决问题!我在编译时设置了-use network=false。这让我向前迈进。所以现在我在尝试连接到套接字时遇到了一个异常。错误号是2010,我在谷歌上搜索发现它与跨域策略有关。现在的问题是,该文件在我的本地硬盘上。我甚至没有使用Web服务器。那么,我应该把crossdomain.xml文件放在哪里,然后我应该把什么放在其中呢。然而,它仍然不起作用。