将 {"identifiant": "iJXB5E0PsoKq2XrU26q6"}
发送到以下云函数时,我无法获取请求正文中的 identifiant
值,并且它始终返回 问题无请求
。
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
admin.initializeApp();
exports.meusCandidatos = functions.https.onRequest((req, res) => {
const identifiant = req.body.identifiant;
if(identifiant) res.status(200).json('ok').end();
res.status(500).json('PROBLEMAS NO REQUEST').end();
});
最佳答案
与 Callable function 不同,请求体不会自动解析,需要先解析才能使用。
此外,json(...)
将在内部调用 end()
,因此您不需要两者都调用。还要确保您没有多次调用 end()
、send()
、json()
等,因为这会导致错误。
const jsonParser = require('body-parser').json();
exports.meusCandidatos = functions.https.onRequest((req, res) => {
jsonParser(req, res, (err) => {
if (err) {
res.status(500).json({error: err.message});
return; // stop here
}
const identifiant = req.body.identifiant;
if (!identifiant) {
res.status(500).json({error: 'PROBLEMAS NO REQUEST'});
return; // stop here
}
// continue
res.status(200).json({ status: 'ok' });
})
});
关于node.js - HTTP事件云函数: request body value is undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60235019/