我使用DialogFlow创建Google智能助理应用程序。对于完整性,我使用NodeJS客户端库的自定义应用程序。
我注意到当DialogFlow的请求获得我的应用程序时,我可以看到所有请求,还有参数对象
const astronomyAssistant = functions.https.onRequest((request, response) => {
const app = new DialogflowApp({ request, response });
console.log(`Request headers: ${JSON.stringify(request.headers)}`);
console.log(`Request body: ${JSON.stringify(request.body)}`);
app.handleRequest(actionMap);
});
有哪些方法可以访问句柄操作中的请求对象?如何使用app访问请求对象?
您可以将所有依赖于 request 对象的句柄函数放在functions.https.onRequest回调中。
例如:
const astronomyAssistant = functions.https.onRequest((request, response) => {
const app = new DialogflowApp({ request, response });
console.log(`Request headers: ${JSON.stringify(request.headers)}`);
console.log(`Request body: ${JSON.stringify(request.body)}`);
const foo = app => {
console.log(request);
}
actionMap.set('input.foo', foo);
app.handleRequest(actionMap);
});
但是,这肯定不是一个好习惯。
答案 0 :(得分:0)
您可以使用higherLevel
快速访问您在行动中定义的任何参数。