У меня есть Node Crawler, который я построил в основном с использованием модуля запроса для загрузки файлов с веб-сайта.Загружаемый модуль отлично работает с PDF-файлами, но при загрузке файлов xlsx, xls, pptx или word docx он подключается с неверным расширением (в зависимости от типа Mime) и не открывается.
Я уже пытался принудительно вызватьусловно установить для документа .xlsx, .xls, .pptx и .docx, однако это не сработало.
let obj = {
"name": "",
"url": $(this).attr('href'),
"alt": ""
"extension": ""
}
let objExtSplit = obj.name.split("_");
//Average File Link Would Be URL/DOCNAME="XLSX_12312312"
obj.extension = "."+objExtSplit[0].toLowerCase();
let options = {
url: obj.url
};
let r = request(options);
r.on('response', function (res) {
if (!fs.existsSync(__dirname + '/pdf/'+obj.name+obj.extension)) {
res.pipe(fs.createWriteStream(__dirname + '/pdfs/'+obj.name+'.' + res.headers['content-type'].split('/')[1])).on('finish',
function() {//Other stuff happens here thats irrelevant });
С PDF-файлами это прекрасно работает.Загружает PDF с правильными заголовками и PDF можно открыть.Попытка получить тот же результат для других типов документов.Заранее благодарю за помощь.