2017-02-14 2 views
0

Я пытался загрузить файл на Heroku с помощью https://www.npmjs.com/package/express-fileupload, на моем компьютере, он прекрасно работает, но на 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.

Кроме того, многие загружаемые пакеты по умолчанию хранят загруженный файл в каталоге temp. Поэтому, даже если вы отправляете их на S3, вам все равно нужно убедиться, что методы, которые вы используете, не пытаетесь это сделать, или установить параметр для его отключения. Я не знаком с express-fileupload, поэтому не могу сказать, какие методы делают или не пытаются хранить копии в файловой системе.

Я успешно реализовал это с использованием multiparty, поэтому я мог бы оказать более конкретную помощь в этом пакете.

Смежные вопросы