2
我在PC上有一個c#服務器套接字,並且在與第一臺PC相同的本地網絡上的另一臺PC上有一個客戶端AS3套接字。 問題是當c#和AS3在同一臺PC上時,連接正常,但是當我在本地網絡上的另一臺PC上移動c#時,AS3無法達到它!AS3客戶端套接字無法連接到本地網絡服務器
我在PC上有一個c#服務器套接字,並且在與第一臺PC相同的本地網絡上的另一臺PC上有一個客戶端AS3套接字。 問題是當c#和AS3在同一臺PC上時,連接正常,但是當我在本地網絡上的另一臺PC上移動c#時,AS3無法達到它!AS3客戶端套接字無法連接到本地網絡服務器
是指給定請下面的代碼:
package {
import flash.display.Sprite;
public class SocketExample extends Sprite {
private var socket:CustomSocket;
public function SocketExample() {
socket = new CustomSocket("localhost", 80);
}
}
}
import flash.errors.*;
import flash.events.*;
import flash.net.Socket;
class CustomSocket extends Socket {
private var response:String;
public function CustomSocket(host:String = null, port:uint = 0) {
super();
configureListeners();
if (host && port) {
super.connect(host, port);
}
}
private function configureListeners():void {
addEventListener(Event.CLOSE, closeHandler);
addEventListener(Event.CONNECT, connectHandler);
addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);
}
private function writeln(str:String):void {
str += "\n";
try {
writeUTFBytes(str);
}
catch(e:IOError) {
trace(e);
}
}
private function sendRequest():void {
trace("sendRequest");
response = "";
writeln("GET /");
flush();
}
private function readResponse():void {
var str:String = readUTFBytes(bytesAvailable);
response += str;
}
private function closeHandler(event:Event):void {
trace("closeHandler: " + event);
trace(response.toString());
}
private function connectHandler(event:Event):void {
trace("connectHandler: " + event);
sendRequest();
}
private function ioErrorHandler(event:IOErrorEvent):void {
trace("ioErrorHandler: " + event);
}
private function securityErrorHandler(event:SecurityErrorEvent):void {
trace("securityErrorHandler: " + event);
}
private function socketDataHandler(event:ProgressEvent):void {
trace("socketDataHandler: " + event);
readResponse();
}
}
我離開了項目表格很長一段時間,但真的很感謝你:) –
檢查你的防火牆規則和殺毒,看看是否被封鎖了連接該端口上和計算機是在同一個子網上。 – Xela
實際上它不可能用閃光燈做,所以我搬到了android,它更好。 –
我自己做,所以它不是不可能的。 – Xela