소켓을 통해 통신하기 위해 node.js 서버와 LÖVE2D 클라이언트를 만들려고합니다. (단지 간단한 "hello world"테스트입니다.) node.js와 LÖVE2D는 모두 같은 PC에서 실행됩니다.Node.js와 LÖVE2D 소켓 통신
LÖVE2D에서 node.js로 메시지를 보내는데 서버의 대답을 읽을 수 없습니다.
내 Node.js를 서버 코드는 다음과 같습니다 LÖVE2D에서
var net = require('net');
var mySocket;
var server = net.createServer(function(socket) {
mySocket = socket;
mySocket.on("connect", onConnect);
mySocket.on("data", onData);
});
function onConnect() {
console.log("Connected to LOVE2D");
}
function onData(d) {
if(d == "exit\0") {
console.log("exit");
mySocket.end();
server.close();
}
else {
console.log("Message from LOVE2D: " + d);
mySocket.write("Message received!", 'utf8');
}
}
server.listen(50000, "localhost");
그리고 클라이언트 코드는 다음과 같습니다
local host, port = "localhost", 50000
local socket = require("socket")
local tcp = assert(socket.tcp())
tcp:connect(host, port)
tcp:send("hello there")
tcp:close()
function love.draw()
love.graphics.print("can't read server answer!", 400, 300)
end
음, 이전 코드는 단지 메시지를 보냅니다. node.js 서버에서 응답을 읽으려면 어떤 구문을 사용해야합니까? 여기
local host, port = "localhost", 50000
local socket = require("socket")
local tcp = assert(socket.tcp())
tcp:connect(host, port)
local answer = tcp:send("hello there")
tcp:close()
function love.draw()
love.graphics.print(answer, 400, 300)
end
이 LÖVE2D & LuaSocket 네트워킹에 대한 몇 가지 문서이지만, 문서는이 날 도움이되지 않았다 : 예를 들어 이것은 단지 나에게 오류를 제공
http://love2d.org/wiki/Tutorial:Networking_with_UDP
http://w3.impa.br/~diego/software/luasocket/
("noob"질문에 대해 유감스럽게 생각합니다. HTTP 프로토콜과 관련된 새로운 내용입니다.)
감사합니다. 지금은 매력처럼 작동합니다. "줄 끝 문자"에 대해 언급하는 것이 좋습니다. 이 줄을 변경하기 전에 LÖVE2D는 실제로 멈추었습니다 : mySocket.write ("Message received! \ n", 'utf8'); – apk