У меня есть простая реакция и экспресс-установка. Я добавляю заголовки к ответу, но не все они доступны в приложении реакции.
In Express ...
app.post('/api/createpdf', (req, res) => {
console.log("Handling...");
let absoluteFilePath = ...
res.setHeader('Content-disposition', 'attachment; filename=test');
res.setHeader('a', 'b');
res.setHeader('Content-types', 'application/pdf');
res.setHeader('c', 'd');
var filestream = fs.createReadStream(absoluteFilePath);
filestream.pipe(res);
}
В реакции ...
createPdf_onClick() {
console.log("Creating PDF...");
fetch(`http://localhost:3001/api/createpdf`, {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
"a": "b",
"c": "d"})})
.then(response => {
console.log("Headers...");
response.headers.forEach((v, k, p) => {
console.log("k: " + k + ", v: " + v);
});
console.log("done");
});
}
Вывод на консоль ...
App.js:38 Headers...
App.js:40 k: content-type, v: application/pdf
App.js:42 done