Google Cloud功能在部署时清空req.body,而不是在模拟器中

时间:2017-11-29 22:46:27

标签: node.js google-cloud-platform google-cloud-functions

我有一个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给了我一个缓冲区,第二个是一个空对象,文件是未定义的。发布完全相同的数据。

0 个答案:

没有答案