[ERR_INVALID_ARG_TYPE]: аргумент «слушатель» должен иметь тип Function в _addListener (events.js: 180: 11) - PullRequest
0 голосов
/ 18 января 2019

Обновление : Проблема была решена после чистой установки NodeJS.

Я пытаюсь создать загрузчик PDF-файлов в NodeJS. Это мой код

                const file = fs.createWriteStream(filePath);
                const sendReq = request.get(pdfUrl);
                sendReq.on('response', (response) => {
                    if (response.statusCode !== 200) {
                        reject()
                    }
                    sendReq.pipe(file);
                });   
                file.on('finish', () => {
                    file.close()
                    resolve()
                });
                sendReq.on('error', (err) => {
                    console.log(err)
                    fs.unlink(file);
                    reject()
                });

Это ошибка, которую я получаю:

TypeError [ERR_INVALID_ARG_TYPE]: The "listener" argument must be of type Function
at _addListener (events.js:180:11)
at WriteStream.addListener (events.js:240:10)
at WriteStream.close (fs.js:2302:10)
at WriteStream.<anonymous> (/var/www/html/lottery-api/app/Helpers/DocumentHelper.js:25:30)
at WriteStream.emit (events.js:164:20)
at finishMaybe (_stream_writable.js:605:14)
at afterWrite (_stream_writable.js:456:3)
at onwrite (_stream_writable.js:446:7)
at fs.js:2246:5
at FSReqWrap.wrapper [as oncomplete] (fs.js:703:5)

Я использую Ubuntu 16.04 с Узел: v10.15.0

Если я удалю этот код, ошибок не будет

file.on('finish', () => { file.close() resolve() });

Я использую пакет pdfreader для анализа сохраненного файла PDF. Если удалить приведенный выше код, я не могу правильно обработать обратный вызов, и программа чтения PDF выдает ошибку.

Ниже приведена ошибка:

(while reading XRef): Error: Invalid XRef stream XRefParseException

 data: 'An error occurred while parsing the PDF: InvalidPDFException',

Что я делаю не так?

Тот же код отлично работает в MacOS Mojave 10.14 с узлом v10.15.0.

...