无法获取 Dialogflow REST 的访问令牌 api

Unable to get Access Token for Dialogflow REST api

似乎有大约 400 种不同的快速入门并不能完全解决我正在寻找的问题,而且我发现自己在 dialogflow 的 google 文档中转了很多圈。我想要做的是用一些文本发出 POST 请求,并从 DF 获得包含意图和响应的响应。文档说我需要我已经拥有的 API 密钥和一个访问令牌,我一直无法从 google 的服务器深处提取它。显然我需要使用我的客户端 ID(我也有)来获取我的访问令牌,这涉及一百万个不同的编码和 base64'ing 和重新编码步骤。即使我设法做到了所有这些,我也只会收到“错误的请求”响应,而没有更多关于我的 JWT 可能如何变形的信息。我用头撞桌子;我已经做了将近一个星期了,我觉得我还处在第一阶段。

不幸的是,我的堆栈不涉及任何客户端库,但我可以通过将 POST 发送到 node.js 服务器,然后发送 POST 到 google,但即便如此,仍然打开了大约 18 罐蠕虫。如果有人可以一步一步地引导我(有或没有 node.js 部分),我将永远感激不已。

您正在寻找的是检测意图请求。根据您的需要,您可以使用需要安装 gcloud sdk 的 curl,或者您可以使用 nodejs(或任何其他客户端库)。

对于这两种方式,您需要设置 GOOGLE_APPLICATION_CREDENTIALS 环境变量,该变量应指向服务帐户密钥文件。服务帐户应有权访问对话流。您可以为在 IAM 中生成的默认 dialogflow 帐户生成密钥。

Node.js 示例: 检查此 link:https://github.com/googleapis/nodejs-dialogflow#using-the-client-library 如上所述,在 运行 您的代码之前设置 GOOGLE_APPLICATION_CREDENTIALS 环境变量。

卷曲: 展开 https://cloud.google.com/dialogflow/docs/quick/api

处的卷曲部分