Я занимаюсь разработкой веб-приложения с использованием javascript, jquery и nodejs.
Я должен получить файл pdf и показать его в новом окне браузера. Я думаю, что правильно получил файл на стороне клиента, потому что окно, которое отображается на данный момент, имеет правильный номер страницы в формате pdf и правильный заголовок, но показанные страницы являются пустыми. Это мой код:
Серверная сторона:
app.post("/showSlide", function(req,res) {
var fileName = req.body.filename.replace(/\s/g, '');
var course = req.body.course;
var professor = req.body.professor
var folder = path.join(__dirname+"/dataset",infoStudent[0].email,course+"_"+professor,fileName);
var file2send = fs.readFileSync(folder);
console.log("file to send: ",file2send);
res.contentType('application/pdf');
res.send(file2send);
});
Клиентская сторона:
$.ajax({
type: "POST",
data: JSON.stringify({"filename": $('#'+buttonId).text(), "course": courseName, "professor": courseProfessor}),
url: "/showSlide",
contentType: "application/json; charset=utf-8",
responseType: "arraybuffer",
success: function(data, status, jqXHR) {
if(data) {
console.log("data",data);
var file = new Blob([data], {
type: 'application/pdf'
});
console.log("Blob file: ",file);
var fileURL = window.URL.createObjectURL(file);
window.open(fileURL);
}
},
error: function(jqXHR, status) {
console.log("Error Showing File");
}
});
Вот изображение того, что я получаю в новом окне.
Это первая часть вывода:
% PDF-1.5
% μμμμ
1 0 объектов
<>>>
endobj
2 0 объектов
<>
endobj
3 0 объектов
<> / ExtGState <> / XObject <> / Font <> / ProcSet [/ PDF / Text / ImageB / ImageC / ImageI] >> / MediaBox [0 0 720 450] / Содержание 4 0 R / Group <> / Вкладки / S / StructParents 0 >>
endobj
4 0 объектов
<>
поток
?} Xi = Ke nÝüê ± § · Þ xv
д d:[
¤Û@þ~´¸øо÷"Ä6d× î!¥%II¯ßýáõ·û»üýøû×õw÷úwÿû×ÿøñÛõºÞ×þ·Rkå5òõªízýåO?~ûÏóúóß~÷ÿòÏÿü§¿üùõó¯¯ßýa¾þúóÏñQ¹Z·þëßüøí?þøíõïÿñ÷¯×QcÒ¯÷SÿO¯¿üÓßRïïÞ^¥Ê_@Ô÷ÈH½¼GèÊí,íõQÞ3½ði Ô
´wYýdM³Gòx·%E]3 önYýÝòëÝYijÒ²´gö×ÿmçÏí}¥³_¹ &û$çwÊÞ/¼_
¿6о £ А »ÑÎíªräö ^ Н; fwÌÞ ±, Io1 + К [yvB; Ve {íüíz§% U | BD * åÝÇþd½¡¼jSª7D} § $ Õ #? {ÓwswYCX @ £ $ ïÆÉÝÓ # ñÎìwĮ-ÏÏw ¢tV © ÜXù =! ÉîÐ @} )ä) tØPbS {j7Ë ~ I ¢ ~ ¯ k! É »» " у # ÓμweAY37T! # AIND
? V (³ Å ([_ OR (yvg®rgμÙ ' »YK $ Ir: É% Ø <è {uúäM3)'e </em> Ài Н
Где я не прав, показывая pdf?
Спасибо