1
동일한 노드 프로세스에서 클라이언트와 서버 모두를 사용하여 에코 서버 테스트를 작성하려고합니다. 이 코드는 두 파일 (서버 및 클라이언트)로 분할하면 작동하지만 한 파일에 결합하면 작동하지 않습니다. 1 파일 내에서 어떻게 작동합니까? 커피 스크립트에서 동일한 nodejs 프로세스의 클라이언트와 서버
var HOST, createServer, g, net;
net = require("net");
HOST = "127.0.0.1";
createServer = function(port) {
net.createServer(function(sock) {
sock.write("welcome! on port " + port + "\r\n");
console.log("CONNECTED: " + sock.remoteAddress + ":" + sock.remotePort);
while (true) {
sock.write("hello\r\n");
}
}).listen(port, HOST);
console.log("server listening on " + port);
};
createServer(7001);
g = net.createConnection(7001, HOST);
g.on("data", function(data) {
console.log("got " + data);
});
과 같은 :
net = require "net"
HOST = "127.0.0.1"
createServer = (port) ->
net.createServer((sock) ->
sock.write("welcome! on port #{port}\r\n")
console.log("CONNECTED: #{sock.remoteAddress}:#{sock.remotePort}")
while true # this is the work queue, what ports to send to...
sock.write "hello\r\n"
return
).listen port, HOST
console.log "server listening on #{port}"
return
createServer(7001)
# XXX why does g.on "data" never fire?
# this works fine if I move it into
# it's own file, how to co-exist
# this client with server above
# in same file?
g = net.createConnection(7001, HOST)
g.on "data", (data) ->
console.log "got #{data}"
return
감사합니다. bardzusny! 나는 "0"의 지연으로 SetInterval을 사용했고 데이터는 이제 펌핑되고있다! – joe