2017-12-13 31 views
-1

노드 JS 순 모듈 서버 코드 :Actionscript xmlsocket은 nodejs net 모듈 서버가 쓰는 데이터를 읽지 않습니다. 그러나 서버는 데이터를 올바르게 읽습니다. 어떤 해결책?

var net = require('net'); 
var server = net.createServer(function (connection) { 
    console.log('client connected'); 

connection.on('data', function (data) { 
    console.log('data from flash = ' + data); 

    var jsonData = {}; 
    jsonData.message = "joined"; 

    var d = JSON.stringify(jsonData); 

    connection.write(d); 

}); 

connection.on('end', function() { 
    console.log('client disconnected'); 
}); 

// connection.pipe(connection); 
}); 
server.listen(3055, function() { 
    console.log('server is listening'); 
}); 

액션 스크립트 코드

this.login_socket.connect(this.server_ip,3055); 
     this.login_socket.addEventListener(Event.CONNECT,this.login_socket_onConnection); 
     this.login_socket.addEventListener(DataEvent.DATA,this.login_onData); 
     this.login_socket.addEventListener(IOErrorEvent.IO_ERROR,this.login_socket_onIOErrorEvent); 
     this.login_socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR,this.login_socket_SecurityErrorEvent); 
     this.login_socket.addEventListener(Event.CLOSE,this.login_socket_closeErrorEvent); 

사람이 어떻게 노드 JS 순 모듈과 XML 소켓을 사용하는 방법을 가르쳐 주시겠습니까? 나는 모든 것을 시도했지만 이것은 전혀 작동하지 않습니다. 서버에 플래시 게임을위한 소켓 연결을 만들고 싶습니다. 백엔드로 laravel을 사용하고 있습니다. 누구든지 PHP로 그것을 만드는 방법을 알고 있다면 말해줘. 고맙습니다.

+0

클라이언트 측에서 오류가 있습니까? 나는 ** securityErrorEvent **가 있어야한다고 생각한다. 왜냐하면 AS3 소켓은 올바른 crossdomain 정책 없이는 작동하지 않을 것이고 node.js 코드에는 하나도 보이지 않기 때문이다. – Organis

+0

클라이언트는 클라이언트 데이터를 그대로 전송할 때 데이터를 승인합니다. 그러나 다른 사람들은 받아들이지 않습니다. crossdomain 정책을 어떻게 할 수 있습니까? –

+0

나는 내가 이해하고 있는지 잘 모르겠다. 클라이언트에서 서버로 "AAA"를 보낸 다음 다시 반향 시키면 괜찮습니다. 하지만 대신 "BBB"를 보내면 괜찮습니까? – Organis

답변

0
var net = require('net'); 

var server = net.createServer(function (connection) { 

    console.log('client connected'); 

    connection.setEncoding("utf8"); 

    // on receive data from client 
    connection.on('data', function (data) { 

     console.log('data from flash = ' + data); 

     var d = JSON.stringify({ 
      message: "joined" 
     }) + "\0"; 

     connection.write(d); 
    }); 

    // on connection end 
    connection.on('end', function() { 
     console.log('client disconnected'); 
    }); 

    // on error 
    connection.on("error", function (exception) { 
     console.log('an error occurred: ' + exception); 
    }); 
}); 

server.listen(3055, function() { 
    console.log('server is listening'); 
}); 

nodejs 서버 코드를 위 코드로 변경 했으므로 이제는 정상적으로 작동합니다.

관련 문제