Показать сообщение отдельно
  #1 (permalink)  
Старый 30.05.2024, 21:30
Кандидат Javascript-наук
Отправить личное сообщение для mik888em Посмотреть профиль Найти все сообщения от mik888em
 
Регистрация: 21.06.2020
Сообщений: 145

Почему не начинается соединение с FTP юзая nodejs?
Использую на nodejs пакет basic-ftp-socks https://www.npmjs.com/package/basic-ftp-socks

Чтоб присоединится к моему FTP серверу через прокси, прокси кстати это socks5 , с авторизацией мой личный (приватный).

Но при выполнении кода - он моментально отрабатывает (менее секунды) и почему-то не вижу в логе никакой ошибки соединения или успеха.

Подскажите как решить проблему?
Код:
const ftp = require("basic-ftp-socks");

function example(useProxy) {
    var client = new ftp.Client();
    client.ftp.verbose = true; // Включить подробный вывод

    console.log("Starting FTP connection...");
    console.log("Initialized accessConfig...");

    var accessConfig = {
        host: "el***4.bget.ru",
        user: "el******ts",
        password: "reX****X",
        port: 21, // Порт по умолчанию для FTP
        secure: false, // Установить false для совместимости с прокси
        timeout: 10000 // Устанавливаем таймаут подключения в миллисекундах
    };

    console.log("Checking useProxy flag...");
    if (useProxy) {
        console.log("Setting proxy configuration...");
        accessConfig.useSocksProxy = true; // Установить true для использования прокси
        accessConfig.socksProxyHost = '185.***.***.147'; // IP прокси
        accessConfig.socksProxyPort = 49724; // порт прокси
        accessConfig.socksProxyUsername = 'Si4****H4'; // Логин прокси
        accessConfig.socksProxyPassword = 'WL****gU'; // Пароль прокси
        console.log("Proxy configuration set.");
    }

    console.log("Attempting to access FTP server...");

    client.access(accessConfig)
        .then(() => {
            console.log("Connected to FTP server");
        })
        .catch((err) => {
            console.error("Error accessing FTP server:", err);
        })
        .finally(() => {
            console.log("Access attempt finished");
            client.close().then(() => {
                console.log("FTP connection closed");
            }).catch((err) => {
                console.error("Error closing FTP connection:", err);
            });
        });
}

// Установите true для использования прокси, false для прямого соединения
console.log("Starting runExample with useProxy = false...");
example(false);  // Замените true на false для работы без прокси
console.log("runExample function invoked.");
Ответить с цитированием