Соединение поддерживается живым с помощью ssh2 в Node JS - PullRequest
0 голосов
/ 06 июня 2018

Я построил функцию на основе в этом примере , цель - подключиться к серверу, маршрутизатору или брандмауэру через интерфейс командной строки.Соединение и результат успешны, но соединение не закрывается при вызове функции 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
});

Что не так или чего-то не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...