Request.body是空的对象
在我的客户端,我正在用这样的数据对我的Firebase node.js服务器上的webhook进行抓取。
const url = 'https://us-central1-<app>.cloudfunctions.net/addUserdata'; const data = { firstName: 'John', lastName: 'Doe', email: 'john.doe@email.com' } const request = new Request(url, { method: 'POST', body: data, mode: 'no-cors', headers: new Headers() }); fetch(request) .then(function(result) { console.log(result); })
我只是试图抓住现在这样的数据。
exports.addUserdata = functions.https.onRequest((req, res) => { console.log(req.body); res.send(200); });
不幸的是,我的要求是一个空的对象。 我失踪或做错了什么?
将JSON
, FormData
, Blob
对象或string传递给body
。 Request.body
不期望一个JavaScript对象。
body: JSON.stringify(data)
在POST
请求上,您必须稍等一会才能将数据导入request.body
var body = ''; req.on('data',function(data) { body += data; }); req.on('end', function(data) { req.body = JSON.parse(body); });