【发布时间】:2020-01-28 22:29:02
【问题描述】:
我有一个火力基地功能:
//Functions and firestore requirements are here
exports.saveData = functions.https.onRequest(async (req, res) => {
console.log("Data received")
const busboy = new Busboy({headers: req.headers});
const fields = {}
const uploads = {}
//Push fields that are not file in fields
busboy.on('field', (fieldname, val) => {
console.log(`Processed field ${fieldname}: ${val}.`);
fields[fieldname] = val;
});
//Push files in uploads
busboy.on('file', (fieldname, file, filename) => {
console.log('File :', file);
const filepath = path.join(tmpdir, filename);
uploads[fieldname] = filepath;
});
busboy.on('finish', () => {
console.log(uploads)
console.log(fields)
db.collection("a_collection").add({
a: fields.a,
b: fields.b,
file: "Help ! From the client, I send an image. Which value do I need to save ?"
})
.then(function () {
res.send("Data is saved")
})
.catch(function (error) {
res.status(400).send(error)
console.error("Error :" + error)
})
});
busboy.end(req.rawBody);
})
我想将来自 multipart/formData 请求的图像和数据保存在 Firestore 数据库中。我怎样才能做到这一点 ?我需要保存 base64 图像还是有其他方法可以将文件保存在 google cloud firestore 中?
我的英语不完美,对不起:/
【问题讨论】:
标签: google-cloud-firestore google-cloud-functions multipartform-data form-data