问题描述
我用Node建立了一个简单的服务器,是用net模块来写的。
var server = net.createServer(function(conn){ var mes = ’’ conn.setEncoding(’utf-8’) conn.on(’data’,function(data){ console.log(data); }); conn.on(’close’,function(){ // })});server.listen(3000)
接着我用windows端的telnet进行连接,然后输入数据,但是问题出现了。我每打一个字,在服务器端就会打印出这个字。这样一来就没办法修改打出来的文字了。然而我在《了不起的NodeJS》一书中看到好像mac的是在按回车才会触发data事件。是windows的问题吗?谢谢大家~
问题解答
回答1:我与楼主遇到同样的问题,我的解决方式是将获得的data放在thunk里暂存,等结束打印出来
conn.on(’data’,function(data){if(data!== ’rn’){ chunk += data;} else { console.log(’n’+chunk); } });