Невозможно отправить zip-файл из бэкэнда nodejs express в интерфейс jquery для автоматической загрузки.Jquery

Программирование на jquery
Ответить
Anonymous
 Невозможно отправить zip-файл из бэкэнда nodejs express в интерфейс jquery для автоматической загрузки.

Сообщение Anonymous »

У меня есть несколько файлов в папке, и я хочу, чтобы они загружались на стороне клиента при нажатии кнопки, поэтому я заархивирую их с помощью adm-zip, который отлично работает
ниже приведен мой внутренний код
const zip = new AdmZip();
zip.addFile(/e/Projects/NodeJs/lknkjnknb/lknkjnknb.pdf);
zip.addFile(/e/Projects/NodeJs/lknkjnknb/lknkjnknb2.pdf);
zip.writeZip('/Projects/NodeJs/lknkjnknb.zip'); // this works fine, zip is good
const data = zip.toBuffer();

res.set('Content-Type','application/octet-stream');
res.set('Content-Disposition',attachment; filename=lknkjnknb.zip);
res.set('Content-Length',data.length);
res.send(data);

ниже приведен мой внешний вызов jquery ajax - он не работает должным образом, zip-файл загружается, но zip-файл не содержит никаких файлов и поврежден
$.ajax({

url: url,
type: "GET",
responseType: 'arraybuffer',

success: async function(response){
const url = window.URL.createObjectURL(new Blob([response]));
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', prj+'.zip');
document.body.appendChild(link);
link.click();
},
error: function (error) {
console.log(Error ${error});
}
});


Подробнее здесь: https://stackoverflow.com/questions/787 ... nd-for-aut
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Jquery»