2017-02-14 80 views
0

我使用https://www.npmjs.com/package/express-fileupload,我的電腦,它的偉大工程,試圖上傳文件的Heroku,但在Heroku上也有這樣的錯誤:Heroku的文件上傳和Node.js的

{"errno":-2,"code":"ENOENT","syscall":"open","path":"./public/owner_photo/f28397baea8fb4d6f6dafed9f5586a9ac0b46843acf1120a0ecad24755cfff57.jpeg"} 

我怎樣才能解決這個問題?

+0

在您的Heroku實例中可能沒有名爲'./ public/owner_photo'的文件夾 –

+0

我的猜測是您沒有權限使用heroku在磁盤上保存文件 – Minato

回答

0

Heroku具有不可變的文件系統,這意味着您無法對文件系統進行更改或添加。您需要將其上傳到其他地方,例如Amazon S3。

此外,許多上傳軟件包默認將上傳的文件存儲在臨時目錄中。因此,即使您將它們發送到S3,您仍然需要確保您使用的方法不會嘗試這樣做,或者設置一個選項來禁用它。我不熟悉express-fileupload,所以我不能說有什麼方法可以或不會嘗試在文件系統上存儲副本。

我已經使用multiparty成功實現了這個功能,所以我可以對該包進行更具體的幫助。