Busboy结合Firebase/Firestorage上传图片失败问题求助
图片上传至Firebase时持续报错:Unexpected end of form
将近6周以来,我尝试了Firebase-Admin、Node.js、Busboy、Multer等多种工具组合上传图片到Firebase,但全部失败。甚至求助了ChatGPT插件Grimoire也没能解决,始终抛出同一个错误:
Error uploading: Error: Unexpected end of form at Multipart._final (/Users/user/Desktop/project-Functions/functions/node_modules/busboy/lib/types/multipart.js:588:17) at prefinish (node:internal/streams/writable:906:14) at finishMaybe (node:internal/streams/writable:920:5) at Writable.end (node:internal/streams/writable:835:5) at onend (node:internal/streams/readable:946:10) at process.processTicksAndRejections (node:internal/process/task_queues:77:11) { storageErrors: []
我的核心代码逻辑如下(尝试过多种写法,核心逻辑一致):
app.post("/uploadProfilePicture", upload.single("profileImage"), (req, res) => { const file = req.file; const { originalname, buffer } = file; const blob = bucket.file("profile_pictures/" + originalname); const blobStream = blob.createWriteStream({ metadata: { contentType: file.mimetype, }, }); blobStream.on("error", (err) => { console.error(err); res .status(500) .send({ message: "Failed to upload image.", error: err.toString() }); }); blobStream.on("finish", () => { const publicUrl = `https://storage.googleapis.com/${bucket.name}/${blob.name}`; res .status(200) .send({ message: "Image uploaded successfully", url: publicUrl }); }); blobStream.end(buffer); });
内容的提问来源于stack exchange,提问作者lamb p
相关产品推荐
相关产品推荐

