Можно ли дополнительно отправить файл и объект json, содержащие данные с помощью multer? Я нашел this нить. Но это только объясняет, как прикрепить одно поле в то время.Файл загрузки Multer + объект JSON
Вот то, что я есть в данный момент на стороне клиента:
request
.post(uploadPOSTUrl)
.set('Accept', 'application/json')
.field('Test', object.TestField)
.attach('file', file)
.end((err, res) => {
if (err) {
} else {
}
});
и на стороне сервера
export function upload(req, res){
console.log("UploadedJSON: ", req.body);
console.log("UploadedFile: ",req.file);
res.status(204).end();
}
, но вместо того, чтобы просто передать 1 поле. Мне нужно отправить весь объект .field('Test', object)
. Когда я это делаю, я получаю [Object object]
со стороны сервера и не могу получить доступ к полям.
Мое единственное решение прямо сейчас было бы петлю и добавить .field()
для каждого поля в моем объекте ...
Так что нет другого пути, кроме повторения .поля()? И да, я использую SuperAgent, но поскольку я загружал файл, я думал, что за это отвечает multer. –
Документы также показывают метод '.send()', который принимает объект, но я ничего не видел об использовании метода '.send()' с multipart/form-data. Вы можете экспериментировать с '.send()' и, возможно, использовать '.set ('Content-Type', 'multipart/form-data')', но я не знаю, будет ли он работать таким образом. Попробуйте. – Nocturno
ok, мне нужно будет повторить поле .field(). Но так как вы здесь, я пытаюсь загрузить этот загруженный файл и сохранить его. Пользователь должен увидеть его в браузере в разделе загрузки. Я не могу найти никакого примера для этого. Я думаю, что я искал неправильные условия. У вас есть идеи? –