request.body.result 在 firebase 代码中未定义
request.body.result is undefined in firebase code
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
console.log('Request headers: ' + request.headers);
console.log('Request body: ' + JSON.stringify(request.body));
console.log(request.body.result.action);
console.log(JSON.stringify(request.body.result.action));
let action = request.body.result.action;
let query = request.body.result.resolvedQuery;
const parameters = request.body.result.parameters;
const inputContexts = request.body.result.contexts;
if(action === 'save.name'){
admin.firestore().collection('users').add({
name: name
}).then(ref => {
console.log('Added new user');
});
elif
{
console.log("Specified action is not enabled");
}
}
});
在这里,request.body.result 在我部署后未定义,这会在操作语句中引发类型错误?
我创建了一个聊天机器人,它从用户那里收集详细信息并将其存储在数据库中,为了存储详细信息,我使用了引发上述错误的 firestore 数据库,因为 request.body.result 是 undefined.Please 帮助出来了!
您没有包含您得到的 JSON,这将有助于诊断问题,但您的代码似乎可能正在使用履行协议的 V1,但您的项目已设置到 V2。虽然您可以将项目切换回 V1,但如果您重写它以使用 V2 会更好。
在 V2 中,request.body.result
已替换为 request.body.queryResult
。虽然某些字段和字段名称已更改,但 action
应该保持不变。
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
console.log('Request headers: ' + request.headers);
console.log('Request body: ' + JSON.stringify(request.body));
console.log(request.body.result.action);
console.log(JSON.stringify(request.body.result.action));
let action = request.body.result.action;
let query = request.body.result.resolvedQuery;
const parameters = request.body.result.parameters;
const inputContexts = request.body.result.contexts;
if(action === 'save.name'){
admin.firestore().collection('users').add({
name: name
}).then(ref => {
console.log('Added new user');
});
elif
{
console.log("Specified action is not enabled");
}
}
});
在这里,request.body.result 在我部署后未定义,这会在操作语句中引发类型错误?
我创建了一个聊天机器人,它从用户那里收集详细信息并将其存储在数据库中,为了存储详细信息,我使用了引发上述错误的 firestore 数据库,因为 request.body.result 是 undefined.Please 帮助出来了!
您没有包含您得到的 JSON,这将有助于诊断问题,但您的代码似乎可能正在使用履行协议的 V1,但您的项目已设置到 V2。虽然您可以将项目切换回 V1,但如果您重写它以使用 V2 会更好。
在 V2 中,request.body.result
已替换为 request.body.queryResult
。虽然某些字段和字段名称已更改,但 action
应该保持不变。