로컬 서버 쪽에서 C# 코드를 실행했습니다. 여기에 127.0.0.1/Socket.htm에게 Flash10-ActionScript3 : 소켓 서버에 연결할 수 없습니다.
public class WebSocket extends flash.display.Sprite
{
private var Socket:flash.net.Socket = new flash.net.Socket();
public function WebSocket()
{
flash.system.Security.allowDomain("*");
flash.system.Security.allowInsecureDomain("*");
flash.system.Security.loadPolicyFile("PolicyFile.xml");
this.Socket.addEventListener(flash.events.Event.CONNECT, Socket_Connect);
this.Socket.connect("127.0.0.1",4502);
}
private function Socket_Connect(event:Event):void
{
this.MyLabel.text= "The socket is now connected..." ;
}
}
을 "127.0.0.1/PolicyFile의 내용입니다 -
System.Net.Sockets.Socket server = new System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp);
server.Bind(new System.Net.IPEndPoint(System.Net.IPAddress.Any, 4502));
server.Listen(int.MaxValue);
while (true)
{
System.Net.Sockets.Socket client = server.Accept();
if (client.Connected)
client.Send(new byte[1]);
}
는 로컬 웹 페이지의 HTML 파일에 포함 된 SWF 파일을 만들었습니다. xml ":
<?xml version="1.0" encoding="utf-8"?>
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
코드는 오류없이 실행되지만 CONNECT 이벤트는 절대로 발생하지 않습니다.
사전에 도움을 주셔서 감사합니다.
감사합니다. "정책 XML"은 '\ 0'으로 끝나야합니다. –