我有一个http触发的云功能,可以在模拟器中正常工作,但在部署时会抛出错误。
var multer = require('multer');
var storage = multer.memoryStorage()
var multerUpload = multer({ storage: storage })
exports.selfie = function (req, res) {
console.log ("START");
console.log (req.body);
// perf logging
const startTime = process.hrtime();
let markers = [];
// data middleware
let handle = multerUpload.single("image");
handle(req, res, (err) => {
console.log (">body");
console.log (req.body);
console.log (">file")
console.log (req.file);
})
}
在模拟器中,它按预期运行: 第一个console.log返回一个空对象,一个在> body之后给我所有的POST变量,最后一个是对上传图像的引用。它以多部分形式发布。
但是当我在prod中部署时,第一个console.log给了我一个缓冲区,第二个是一个空对象,文件是未定义的。发布完全相同的数据。