Javascript 如何解决此对话框流错误:未设置文本输入?

Javascript 如何解决此对话框流错误:未设置文本输入?,javascript,node.js,dialogflow-es,Javascript,Node.js,Dialogflow Es,向给定的Nodejs代码发送以下post请求时出错。我在这里使用DialogFlowAPI 错误: Error: Input text not set. at Http2CallStream.call.on (/home/user/coding/chatbot/node_modules/@grpc/grpc-js/build/src/client.js:96:45) at Http2CallStream.emit (events.js:203:15) at process

向给定的Nodejs代码发送以下post请求时出错。我在这里使用DialogFlowAPI

错误:

Error: Input text not set.
    at Http2CallStream.call.on (/home/user/coding/chatbot/node_modules/@grpc/grpc-js/build/src/client.js:96:45)
    at Http2CallStream.emit (events.js:203:15)
    at process.nextTick (/home/user/coding/chatbot/node_modules/@grpc/grpc-js/build/src/call-stream.js:71:22)
    at process._tickCallback (internal/process/next_tick.js:61:11)

代码:

app.post("/api/df_text_query", async (req, res) => {
     const request = {
      session: sessionPath,
      queryInput: {
        text: {
          text: req.body.text,
          languageCode: config.dialogFlowSessionLanguageCode
        }
      }
    };

    let responses = await sessionClient.detectIntent(request);
    res.send(responses[0].queryResult);
  });
后请求:

{
 "text":"HI"  
}

我可能真的迟到了,但如果你找到了解决方案,请分享。非常感谢。这可能有助于解释问题以及您的代码如何帮助解决问题。“简洁是可以接受的,但更全面的解释更好。”()。
compare your code with this. Mine works..

const dialogflow = require("dialogflow");
const config = require("../config/keys");
// const { query } = require("express");

const sessionClient = new dialogflow.SessionsClient();

const sessionPath = sessionClient.sessionPath(
  config.googleProjectID,
  config.dialogFlowSessionID
);

module.exports = (app) => {
  app.get("/", (req, res) => {
    res.send({ hello: "AusTINE" });
  });

  app.post("/api/df_text_query", async (req, res) => {
    const request = {
      session: sessionPath,
      queryInput: {
        text: {
          text: req.body.text,
          languageCode: config.dialogFlowSessionLanguageCode,
        },
      },
    };
    let responses = await sessionClient
      .detectIntent(request)
      .then((responses) => {
        console.log("Detected intent");
        const result = responses[0].queryResult;
        console.log(`  Query: ${result.queryText}`);
        console.log(`  Response: ${result.fulfillmentText}`);
        if (result.intent) {
          console.log(`  Intent: ${result.intent.displayName}`);
        } else {
          console.log(`  No intent matched.`);
        }
      })
      .catch((err) => {
        console.error("ERROR:", err);
      });
    res.send({ do: "text query" });
  });

  app.post("/api/df_event_query", (req, res) => {
    res.send({ do: "event query" });
  });
};