#javascript #node.js #express #axios #form-data
#javascript #node.js #экспресс #axios #форма-данные
Вопрос:
У меня есть FormData, который содержит изображения в виде больших двоичных объектов. Я могу отправить их на свой сервер с помощью axios. Мне также нужно добавить идентификатор пользователя (строку) в мой запрос post. Поэтому я получу доступ к обоим запросам.файл и req.body на моем экспресс-сервере.
Как это сделать? Вот мой код:
export async function uploadImages(files, userId) {
try {
const images = new FormData();
if ([files].length > 0) {
return Object.values(files).forEach((file: File) =>
images.append("image", file.blob, file.name)
);
}
//TODO: ADD USERID TO THE POST REQUEST
const res = await ax.post(
process.env.SERVER_URL "/upload-images",
images
);
return console.log("success", res);
} catch (err) {
return console.log("error", err);
}
}
Комментарии:
1. Вы пробовали просто добавлять поля в FormData с необходимой информацией?
2. Да, я написал images.append(«user», userId), но запрос api никогда не выполняется. Это либо только файлы, либо только идентификатор пользователя. Я застрял здесь…
3. Вы проверяли
req.body
иreq.files
?4. Да, я консоль. запрос на вход в систему в целом. Он никогда не запускается. Вызов api не выполняется, если в одном и том же FormData есть и идентификатор пользователя, и изображения. Я делаю что-то не так, но что?
5. И какую ошибку вы получили на интерфейсной стороне, если вы не достигли своего внутреннего маршрута?