Загрузить файл в приложении Express.js
Я разрабатываю RESTful API для мобильного клиентского приложения с комбинацией Node.js, Express.js и Mongodb.
Теперь я пытаюсь обработать загрузку изображения профиля пользователя, и я нашел модуль под названием "multer" (то есть тот, который рекомендуется самой командой express.js), которые позволяют express.app обрабатывать multipart/form- запросы данных.
Теперь мне нужно протестировать приложение и, более того, функцию загрузки, но я не могу имитировать запрос http-формы (через плагин postman chrome).
Multer возвращает эту ошибку:
[Ошибка: многостраничный: граница не найдена]
Фактически, сравнивая запрос http-формы (который работает) с пользовательским HTTP-запросом, второй не имеет свойства заголовка Boundary.
Какое свойство границы?
Ответы
Ответ 1
Граница в многострочной форме указывает некоторую строку разделителя, разделяющую текст и двоичные данные. Вы можете сделать это в почтальоне, но похоже, что вы не отправляете файлы и текст, поэтому почтальон может по умолчанию использовать стандартную форму. вы видите что-то вроде:
![postman-form-multipart]()
Если вы нажмете "Предварительный просмотр" в почтовом ящике, вы увидите границу в заголовке Content-type и в теле.
Ответ 2
Если вы используете Postman, вы можете попробовать удалить заголовок: "Content-type": "multipart/form-data". Я удалил его, и теперь он работает.