Есть ли четкий способ обработки ошибок ftp nodejs

Я использую следующий код для подключения к ftp и загрузки файла. Но случайным образом он выдает следующую ошибку, и я не могу ее отловить в блоке catch. Я не уверен, откуда его кидают. Здесь нужна твоя помощь.

Выход:

запустить клиент ftsp ...

запустить клиент ftsp 1 ...

запустить клиент ftsp 2 ...

events.js: 291

бросить эр; // Необработанное событие 'ошибка' ^

Ошибка: не удается открыть подключение для передачи данных.

Программа

      const PromiseFtp = require('promise-ftp')
 async  streamFileFromFtpToGcs(ftpsName, GcsBucket){
    const ftp = new PromiseFtp();
    try{
      console.log('start ftsp client 1...')
      await ftp.connect(ftpsConfig)
      console.log('start ftsp client 2...')
      const stream = await ftp.get('/03531/' + ftpsName)
      stream.on('error', function(err) {
        console.log('Error in')
        throw new Error('Error reading the file')
      })
      stream.on('data', function(err){
        console.log('Error data')
      })
      await new Promise((resolve, reject) =>{
        stream.once('close', resolve)
        stream.once('error', reject("File problem"))
        stream.pipe(GcsBucket.file('input/' + ftpsName).createWriteStream({
          destination: 'input/' + ftpsName
        }))
      })

    }catch(error) {
      console.log("error in ",error)
       throw new Error('Something wring with ftp', error)
    } finally{
      console.log("Ending")
      await ftp.end();
    }
  }

0 ответов

Другие вопросы по тегам