如何解决使用节点js进行telnet
1。我尝试使用节点js连接telnet。我正在尝试使用计算机上的节点js和telnet控制Epson投影仪。
2。我正在cmd中通过以下方式运行js代码:“ node filelocation \ test.js”
我使用的代码:
const telnet = require('telnet-client');
const server = new telnet();
// display server response
server.on("data",function(data){
console.log(''+data);
});
// login when connected
server.on("connect",function(){
server.write("%1POWR 1\r\n");
});
// connect to server
server.connect({
host: "192.168.2.170",port: 4352
});
我正在通过以下方式在cmd中运行js代码:“ node filelocation \ test.js”
我得到的错误是:
TypeError: server.write is not a function
at Telnet.<anonymous> (C:\Users\USER\Desktop\TEST\telnet2.js:11:12)
at Telnet.emit (events.js:314:20)
at Socket.<anonymous> (C:\Users\USER\node_modules\telnet-client\lib\index.js:70:16)
at Object.onceWrapper (events.js:420:28)
at Socket.emit (events.js:326:22)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1132:10)
解决方法
我检查了this软件包,但没有write()
功能可供使用。而是使用exec()
。还要像下面一样更改on('connect')
来捕获错误。
server.on("connect",function(err,param){
server.exec("%1POWR 1\r\n");
});
,
我使用了这段代码,并且对我有用。谢谢大家的支持。
var net = require('net');
var client = new net.Socket();
client.connect(4352,'x.x.x.x',function() {
console.log('Connected');
client.write('%1POWR 0\r\n');
});
client.on('data',function(data) {
console.log('Received: ' + data);
client.destroy(); // kill client after server's response
});
client.on('close',function() {
console.log('Connection closed');
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。