나는 pdfkit과 함께 express.js를 사용하고 있으며, pdf를 생성하고 웹 브라우저에서 강제로 다운로드하려고합니다.express.js로 pdf를 강제로 다운로드 할 수 없습니다.
pdf가 저장된 정적 위치를 정의했지만이 위치를 읽고 파일을 다운로드하려고 할 때 아무 일도 일어나지 않습니다. 헤더도 설정하려고했지만 작동하지 않습니다.
서버 및 프런트 엔드가 실행되는 포트와 관련이있을 수 있음을 읽었습니다. 내 경우에는이 있습니다 : 4200 (각도) 및 8080 (Node.js를)
여기 서버 코드의 조각입니다 :
var downl = doc.pipe(fs.createWriteStream('C:/Users/Martyna/Desktop/test pdfow/out.pdf'));
doc.end();
downl.on('finish', function() {
res.download('C:/Users/Martyna/Desktop/test pdfow/out.pdf', 'out.pdf');
})
어떻게 클라이언트의 요청을 만들고있다 : 파일이 브라우저에 표시해야하는 브라우저에 표시하기 위해 다운로드보다는
을 볼 파일을하려면? 브라우저의 dev 도구의 네트워크 섹션에서 무엇을 볼 수 있습니다 : 요청을 보았고 응답이 다시 나타납니다. – skirtlecreateAuthHeaders() { this.loadToken(); this.options는 = 새로운 RequestOptions ({ 헤더 : 새로운 헤더 ({ '콘텐츠 유형': '응용 프로그램/JSON', '인증'this.authToken }) }); } loadToken() { this.authToken = localStorage.getItem ('token'); } testGetId (cv : Cv) { this.createAuthHeaders(); this.http.get (this.domain + '/ konto-uzytkownika /'+ cv.cvId, this.options);을 반환합니다. \t \t \t \t \t \t \t \t \t : 내가 추가 한 – tys
그리고 내 개발 도구에 나는 적절한 응답 유형을 얻을 res.writeHead (200, { \t \t \t \t \t \t \t '콘텐츠 유형': '응용 프로그램/PDF', \t \t \t \t \t \t \t 'Content-Disposition': '첨부 파일; filename = out.pdf ' \t \t \t \t \t \t \t}); 그리고 내 콘솔에 오류가 발생합니다. 오류 : 보낸 후 헤더를 설정할 수 없습니다. – tys