Я пытаюсь сохранить ответ от ajax вызова с BLOB-объектов в формате PDF, но файл открывается при открытии, но тот же вызов при выполнении из почтальона и сохранения ответа прекрасно воссоздает файл PDF. Мой код:
$.ajax({
type: "post",
url:
api_url_GetPDF
,
headers: { 'token': access_token },
data: JSON.stringify(Modeldata),
contentType: "application/json",
//dataType: "application/pdf",// does not work
success: function (resultdata, status, xhr) {
var type = xhr.getResponseHeader('Content-Type');
var blob = new Blob([resultdata], { type: type });
var link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = "res.pdf";
link.click();
},
error: function (xhr, status, error) {
console.log("===Failed===" + xhr.responseText + error);
}});
Кроме того, размер файла увеличивается при сохранении с BLOB-объектов, а содержимое при просмотре в блокноте показывает некоторые нераспознанные ненужные символы (черные знаки вопроса в форме ромба) внутри, но файл от почтальона не показывает все ненужные символы. Примечание. Когда я вижу ответ в консоли почтальона и записываю ответ в ajax, они одинаковы и имеют одинаковую длину (перекрестная проверка с помощью winmerge).