У меня есть API, который возвращает ответ в виде «потока октетов». Вот определение чванства для того же.
responses: {
'200': {
description: 'Will return the pdf for an invoice',
content: {
'application/octet-stream': {
schema: '',
},
},
},
}
От почтальона и чванства я могу сохранить ответ в виде файла PDF. но с узлом я не могу написать PDF-файл.
Ниже приведен код для node js для вызова API.
var fs = require('fs');
var request = require('request');
let headers = {
'Content-Type': 'application/json',
'accept': "application/octet-stream",
}
let body = {
"invoiceId": "343",
"slCompId": 243,
"platfromCompId": "4620816365013235830"
}
request.post({
headers,
url: 'http://localhost:3001/invoice/',
json: body
},
function (error, response, body) {
console.log(response);
console.log("response");
fs.writeFile('a.pdf', response.body, 'binary')
});
РЕДАКТИРОВАТЬ:
Записанный файл PDF поврежден. Внутри файла ничего нет, и программа просмотра PDF выдает ошибку при открытии файла.