Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Загрузка файлов с url через wget с аутентификацией (https://javascript.ru/forum/node-js-io-js/73753-zagruzka-fajjlov-s-url-cherez-wget-s-autentifikaciejj.html)

feelz 12.05.2018 11:06

Загрузка файлов с url через wget с аутентификацией
 
Доброго времени суток, господа. Пишу серверное приложение, совсем недавно начал знакомство с Node.js.
Нужно реализовать загрузку файлов с конкретного url, но с автовводом аутентификационных данных, в том числе с доменом. Если на обычном wget можно ввести параметры вроде --http=user --http=password, то как присвоить эти опции в нодовские модули wget-improved или wget, найти не удалось. Такие параметры есть только для прохождения прокси, но это явно не то.
Кто сталкивался с решением подобного или альтернативным вариантом, буду весьма признателен.

EmperioAf 12.05.2018 15:43

Здравствуйте.
wget-improved использует модули http/https для скачивания (метод request)
из параметров позволяет передать в опциях только поле auth: string /* user:password */, при этом это будет базовая авторизация, если вам нужна какая-то другая авторизация, то модуль не подойдет, потому что в функции download вызывается request(функция данного модуля) так:
...
 req = request({
        protocol: srcUrl.protocol,
        host: srcUrl.hostname,
        port: srcUrl.port,
        path: srcUrl.pathname + (srcUrl.search || ""),
        proxy: options?options.proxy:undefined,
        auth: options.auth?options.auth:undefined,
        method: 'GET'
    }...



модуль node-wget для скачивания использует модуль request, при этом параметр options передается как он есть в функцию request, так что тут вас никак модуль не ограничивает в возможностях аутентификации, почитать что именно принимает request в качестве параметров вы можете ЗДЕСЬ


Часовой пояс GMT +3, время: 19:06.