我在客户端使用类似以下数据的fetch方法将数据发送到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);
});
很不幸,我的 req.body 是一个空对象。我错过了什么或做错了什么?
Request()
中的注释:“请求体类型只能是Blob
、BufferSource
、FormData
、URLSearchParams
、USVString
或ReadableStream
类型,因此如果要将JSON
对象添加到有效载荷中,您需要对该对象进行字符串化。”,另请参阅使用ReadableStream进行Fetch。 - guest271314