0

我无法onConnect在 nodeJS 中输入函数。所有的事情是我正在尝试使用 nodejs 作为服务器连接到闪存。

我的 server.js 是

 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 Flash");
 }

 function onData(d)
 {
   if(d == "exit\0")
   {
      console.log("exit");
      mySocket.end();
      server.close();
    }
   else
   {
           console.log("From Flash = " + d);
            mySocket.write(d, 'utf8');
    }
 }

  server.listen(9001, "127.0.0.1");
  console.log("Connection Established");

谁能告诉我哪里出错了?

4

1 回答 1

1

事件connection用于 net.Server 类(服务器)和connectnet.Socket 类(客户端)。当您通过 net.createServer 创建服务器时,您传递的函数会自动设置为connection事件的侦听器。从API 文档-

net.createServer([options], [connectionListener])

创建一个新的 TCP 服务器。connectionListener 参数自动设置为“连接”事件的侦听器。

服务器没有connect事件。要使用connectcreate another create another client.jswith following 并在运行server.js.

 var net = require('net');
 var port = 9001,
     host = '127.0.0.1';
 var socket = net.createConnection(port, host);
 console.log('Socket created.');
 socket.on('data', function (data) {
     console.log('RESPONSE: ' + data);
 }).on('connect', function () {
     socket.write("GET / HTTP/1.0\r\n\r\n");
 }).on('end', function () {
     console.log('DONE');
 });
于 2013-03-27T13:45:02.830 回答