Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数据上的节点js仅在写入流后执行_Javascript_Node.js_Sockets_Telnet - Fatal编程技术网

Javascript 数据上的节点js仅在写入流后执行

Javascript 数据上的节点js仅在写入流后执行,javascript,node.js,sockets,telnet,Javascript,Node.js,Sockets,Telnet,您好,我正在尝试使用nodes net lib连接到telnet服务器 net = require('net') con = new net.Socket() con.connect(23,'10.0.0.120',()=>{ console.log('telnet is connected') }) con.on('data',(data)=>{ console.log('telnet :' + data) con.destroy() }) con.o

您好,我正在尝试使用nodes net lib连接到telnet服务器

net = require('net')

con = new net.Socket()
con.connect(23,'10.0.0.120',()=>{
    console.log('telnet is connected')
})

con.on('data',(data)=>{
    console.log('telnet :' + data)
    con.destroy()
})

con.on('close',()=>{
    console.log('connection close')
})
当一个套接字打开时,我应该从服务器收到一个“login:”消息,然后写下用户名

使用wireshark,我可以看到数据已经发送,但节点没有对数据做出反应 奇怪的是,当我通过套接字发送一些东西时,会突然对以前的数据做出反应

con.write('')
true
telnet :
login: 

您正在为上名为
的事件添加侦听器,但是,当然,您应该使用名为
data
的事件

改变

con.on('on',(data)=>{
…到

con.on('data',(data)=>{

为什么在收到可能只有第一个字节的数据后还要继续con.destroy?这只是为了测试,evan 1个字节的数据应该出现在控制台上,但它只出现在“con.write()”之后,不知道已经到达了多少数据……很抱歉,代码中已经修复了这一点,但我忘了更新帖子,我使用数据运行它,数据确实到达控制台,但不是在数据到达时,只有在我写入“con”之后