heroku에서 NodeJS를 사용하고 있습니다.heroku에서 저장된 파일을 읽을 수 없습니다.
다른 서버에서 파일을 읽은 다음이를 내 응용 프로그램의/temp 디렉토리에 저장합니다. 다음으로, 동일한 파일을 읽고 클라이언트에게 전달합니다.
파일을 저장 한 다음 나중에 그것이 읽는 코드 : 이것은 내 로컬 호스트에서 잘 작동
http.request(options, function (pdfResponse) {
var filename = Math.random().toString(36).slice(2) + '.pdf',
filepath = nodePath.join(process.cwd(),'temp/' + filename);
pdfResponse.on('end', function() {
fs.readFile(filepath, function (err, contents) {
//Stuff to do after reading
});
});
//Read the response and save it directly into a file
pdfResponse.pipe(fs.createWriteStream(filepath));
});
. 나는 경로가 올바르게 사용되도록 process.cwd()
을 사용하고
events.js:72
throw er; // Unhandled 'error' event
Error: ENOENT, open '/app/temp/nvks0626yjf0qkt9.pdf'
Process exited with status 8
State changed from up to crashed
: Heroku가에 배포 할 때
그러나, 나는 다음과 같은 오류가 발생합니다. 그러나 그때조차도 도움이되지 않았습니다. heroku 문서에 따라, 나는 지금하고있는 applications 디렉토리에 파일을 만들 수있다. 그러나 이것이 파일을 읽지 못하는 이유를 알 수는 없습니다 ...
정확합니다. 사실, 내가 로컬로 파일을 만들었지 만 나는 내 자식 커밋에 추가하지 않은 것 같아! – callmekatootie
내 빌드에서 로컬 (임시) 임시 폴더가 있었지만 왜 heroku에서 생성되지 않았는지 알 수 없습니다. 이것은 내 문제를 해결했습니다! – vonwolf
@vonwolf 폴더의 내용을 무시하는 규칙으로'.gitignore'처럼 그 폴더에 뭔가를 추가하십시오. 그래서 더 이상 비어 있지 않고 서버에 생성 될 것입니다. –