【问题标题】:Node.JS server receives data character by character instead of line by lineNode.JS 服务器逐字符而不是逐行接收数据
【发布时间】:2012-10-20 17:02:52
【问题描述】:

我有一个简单的 Node.JS 服务器:

//Module dependencies
var net = require('net')


//Create server
var server = net.createServer(function (conn) {

  // handle connection
  conn.setEncoding('utf8');

  conn.write(
      'Hi, please enter something: '
  );

  conn.on('data', function (data) {
    console.log(data);
  });

});


//Listen
server.listen(3000, function () {
  console.log('\033[96m   server listens at *:3000\033[39m');
});

它应该在服务器的控制台窗口中回显客户端的输入。但是当我使用 telnet 客户端连接到服务器时,它是通过逐个字符输出来实现的,而我宁愿它在按 Enter 时逐行输出。

我知道我无法收集conn.on 方法中的所有输入,但可以在较低级别完成吗?

【问题讨论】:

    标签: node.js telnet


    【解决方案1】:

    这是因为 telnet 在每个字符之后都会刷新 TCP 缓冲区,除非您使用 linemode

    【讨论】:

    • 如何在 Windows 7 telnet 客户端开启这个选项?
    • 你要实现telnet协议rfc1184
    猜你喜欢
    • 2018-12-07
    • 1970-01-01
    • 1970-01-01
    • 2013-12-17
    • 1970-01-01
    • 1970-01-01
    • 2020-08-12
    • 1970-01-01
    • 2023-03-21
    相关资源
    最近更新 更多