【发布时间】:2020-11-15 22:03:35
【问题描述】:
我创建了一个 Dialogflow V2 代理并尝试将其与 ionic 4 App 集成。
遵循的步骤:
- 创建了一个服务帐户并从谷歌控制台创建了一个 JSON 密钥文件。
- 添加了 ENV 变量 GOOGLE_APPLICATION_CREDENTIALS 的路径
- 还运行以下命令进行 gcloud 身份验证
- gcloud auth 应用程序默认登录
- gcloud auth 应用程序默认打印访问令牌
- 我什至可以使用 google jwt 令牌创建访问令牌
这里的问题是,当我在我的 ionic 应用程序甚至邮递员中使用相同的访问令牌时,我得到 401 未经授权的无效访问令牌错误。
我已按照以下链接创建 Ionic 应用程序 https://www.yuribacciarini.com/integrate-dialogflow-chatbot-on-ionic-app/
API 调用:
我正在使用本机 HTTP 调用
import { HTTP } from '@ionic-native/http/ngx';
private nativeHttp: HTTP
let encUrl = "https://dialogflow.googleapis.com/v2/projects/id/agent/sessions/id:detectIntent";
return from(this.nativeHttp.post("URL", data, headers)
.then(res => {
console.log(res); //Returning [object object]
console.log(JSON.stringify(res)); //Returning data as single string
return res;
}, (error: any) => {
return this.handleError(error);
}));
回应:
在此响应中,数据以字符串形式返回。我试图解析数据,如果我采用 response.data.queryResult 或 Response.queryResult 它显示未定义。 感谢和问候, 贾纳尼
【问题讨论】:
标签: ionic-framework ionic4 dialogflow-es dialogflow-es-fulfillment google-cloud-console