面临的错误可能是因为 dialogflow 版本已更改。下面提到了来自 firebase 的错误它不起作用

The error facing Maybe it is because dialogflow version is changed. The error from firebase is mentioned below it is not working

const functions = require('firebase-functions');

// // Create and Deploy Your First Cloud Functions
// // https://firebase.google.com/docs/functions/write-firebase-functions
//
// exports.helloWorld = functions.https.onRequest((request, response) => {
//  response.send("Hello from Firebase!");
// });

exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
    console.log("request.body.queryResult.parameters:", request.body.queryResult.parameters);

    const parameters = request.body.queryResult.parameters;

    response.send({
        fulfillmentText:
            `${parameters.given-name} your hotel booking request for ${parameters.RoomType} room is forwarded for
             ${parameters.person} persons, we will contact you on ${parameters.email} soon`
    });
});

我在 Firebase 中遇到的错误是:

ReferenceError: name is not defined
    at exports.dialogflowFirebaseFulfillment.functions.https.onRequest (/srv/index.js:17:33)
    at cloudFunction (/srv/node_modules/firebase-functions/lib/providers/https.js:49:16)
    at /worker/worker.js:783:7
    at /worker/worker.js:766:11
    at _combinedTickCallback (internal/process/next_tick.js:132:7)
    at process._tickDomainCallback (internal/process/next_tick.js:219:9)

您正试图做一些 JavaScript 不允许的事情。查看此字符串的开头:

`${parameters.given-name} your hotel booking request for ${parameters.RoomType} room is forwarded for

您正在尝试将表达式 parameters.given-name 的值作为此处的值进行插值。但是,这并没有评估您期望的方式。该表达式告诉 JavaScript 从 parameters.given 中减去 name 的值。由于您没有名为 name 的变量,因此代码会因 "name is not defined".

而崩溃

如果您尝试从参数访问名为 "given-name" 的 属性,您应该这样做:

`${parameters['given-name']} ... `