Загрузка большого файла в strapi не удалась
Используя strapi 3.0.0-alpha.14.1.1, локальный поставщик файлов и mongodb, он не может загрузить файл размером 500 МБ. Хотя "Максимально допустимый размер (в МБ)" установлен на 10000 МБ, он выдает следующую ошибку:
Использование curl:
curl -X POST -F 'files=@/development/TestFiles/largefile.zip' http://localhost:1337/upload
{"message":"An internal server error occurred","statusCode":500,"error":"Internal Server Error"}
Используя админ панель:
Error: maxFileSize exceeded, received 209780558 bytes of file data
at Stream.<anonymous> (/usr/lib/node_modules/strapi/node_modules/formidable/lib/incoming_form.js:222:19)
at emitOne (events.js:116:13)
at Stream.emit (events.js:211:7)
at MultipartParser.parser.onPartData (/usr/lib/node_modules/strapi/node_modules/formidable/lib/incoming_form.js:387:14)
at callback (/usr/lib/node_modules/strapi/node_modules/formidable/lib/multipart_parser.js:102:31)
at dataCallback (/usr/lib/node_modules/strapi/node_modules/formidable/lib/multipart_parser.js:112:11)
at MultipartParser.write (/usr/lib/node_modules/strapi/node_modules/formidable/lib/multipart_parser.js:305:3)
at IncomingForm.write (/usr/lib/node_modules/strapi/node_modules/formidable/lib/incoming_form.js:159:34)
at IncomingMessage.<anonymous> (/usr/lib/node_modules/strapi/node_modules/formidable/lib/incoming_form.js:125:12)
at emitOne (events.js:116:13)
at IncomingMessage.emit (events.js:211:7)
at IncomingMessage.Readable.read (_stream_readable.js:475:10)
at flow (_stream_readable.js:846:34)
at resume_ (_stream_readable.js:828:3)
at _combinedTickCallback (internal/process/next_tick.js:138:11)
at process._tickDomainCallback (internal/process/next_tick.js:218:9)
Любая помощь, пожалуйста?
1 ответ
Решение
Благодаря Flux159(в github)
Создал проблему в github и получил рабочий ответ ниже. Может быть полезным для других:
В config/environment /development/request.json вам нужно изменить конфигурацию парсера тела koa для грозного:
Пример: установка maxFileSize на 500 МБ для огромного (число в байтах, поэтому 500*1024*1024):
...
"parser": {
"enabled": true,
"multipart": true,
"formidable": {
"maxFileSize": 524288000
}
},
...
Для получения дополнительной информации см.: https://github.com/strapi/strapi/issues/1975