У меня есть Express. js бэкэнд, который отправляет в память сгенерированные *.zip
с *.docx
файлами внутри. Zip отправляется в виде буфера. Бэкэнд отправляет данные, веб-интерфейс получает их. До этого момента все хорошо.
Проблема в том, что когда я получаю его на веб-интерфейсе, используя axios
, я не могу заставить браузер загрузить его как *.zip
на стороне клиента, чтобы пользователь мог открыть его и используйте.
Это то, что я делаю на веб-интерфейсе:
let formData = new FormData()
formData.append("data", JSON.stringify(this.data))
formData.append("template", this.template)
axios.post('http://localhost:3001/gen', formData, {
responseType: 'blob',
headers: {
'Content-Type': 'multipart/form-data'
}
})
.then(res => {
res.end( res.data, 'binary' );
})
, но он не загружает файл, как я sh. Я нигде не сохраняю файл на сервере - я просто создаю его на лету в памяти и отправляю клиенту.