node.js - 在 Node JS 中使用 ssh2 保持连接保持活动状态
问题描述
我基于这个例子构建了一个函数,目标是通过 CLI 连接到服务器或路由器或防火墙。连接和结果都是成功的,但是调用函数时连接没有被关闭end()
。
根据文档,客户端方法end()
关闭连接并断开套接字。
end() - (void) - 断开套接字。
这是代码:
var Client = require('ssh2').Client;
var conn = new Client();
conn.on('ready', function (err) {
if (err) {
console.log('Error connecting... ' + err);
}
conn.exec(_command, function (err, stream) {
stream.write(_command);
if (err)
console.log('Error executing command... ' + err);
stream.on('data', function (data, stderr) {
if (stderr)
console.log('Error... ' + stderr);
else {
//some actions using the result string
}
}).on('exit', function (code, signal) {
console.log('Exited with code ' + code);
conn.end();
});
stream.end('\n');
});
})
.on('error', function (err) {
console.log(err);
}).on('end', function () {
console.log('Client :: ended');
conn.end();
})
.connect({
host: _host,
port: port,
username: username,
password: password
});
有什么问题或缺少什么?
解决方案
推荐阅读
- java - 在 Spring Boot 应用程序中动态创建模式
- python - 在 txt 文档中找到某一行后,有没有办法向后循环?
- python - 如何理解 python 列表引用
- javascript - 将 CSS 添加到 React SSR 组件
- jpa - 传递给持久化的分离实体:一个与另外 2 个类有 ManyToOne 关系的类
- pandas - 如何在 python 中跳过缺失的 NaN 值同时替换它们?
- r - 在 R 的函数中使用 fct_recode
- python - 匹配句子中以pattern结尾的单词
- pdf - 如何在 antlr 中使用嵌套字符串分隔符解析 PDF 字符串?
- c - 使用单帧缓冲区的动画怎么可能?