Google帐户关联操作返回错误

问题描述

我的Dialogflow代理与Google助手集成在一起,我正在尝试通过Google上的操作对其进行扩展。现在,我们正在尝试与客户的Oauth服务器建立帐户链接。身份验证URL,重定向URI,客户端密钥和客户端ID由它们提供,并且在我的项目的帐户链接部分的Actions Console中使用 授权代码 对其进行了配置。 。使用相同的详细信息,我能够实现与我的Alexa Skill链接的帐户。我使用Node.js作为我的Webhook,就像使用 google-actions 包来处理意图一样。我从文档中获得了下面的代码,同样的代码添加到了我的webhook

const app = dialogflow({ debug: false })

app.intent('Get Signin',(conv,params,signin) => {
    console.log("signin",signin)
    if (signin.status === 'OK') {
        const access = conv.user.access.token // possibly do something with access token
        conv.ask('Great,thanks for signing in! What do you want to do next?')
    } else {
        conv.ask(`I won't be able to save your data,but what do you want to do next?`)
    }
})

app.intent('Default Welcome Intent',(conv) => {
    conv.ask(new SignIn());

})  

每当我调用代理程序时,它都要求我将帐户与Google关联(尽管我并未尝试登录Google),浏览器随即打开了我的客户端的OAuth授权端点,我已提供了登录信息并返回回到Google Assistant应用,并显示一条错误消息

抱歉,出了点问题,所以我无法登录。但是您可以 稍后再试

我尝试将变量登录信息输出到控制台,然后看到以下错误

{
  '@type': 'type.googleapis.com/google.actions.v2.SignInValue',status: 'ERROR'
}

在Google Assiatant应用中,我可以看到重定向URI参数为

https://oauth-redirect.googleusercontent.com/r/YOUR_PROJECT_ID?code=AUTHORIZATION_CODE&state=STATE_STRING

我需要在以下几点澄清

  1. 除了通过Google登录之外,我还可以在Google Actions中实现与其他Oauth服务器的帐户链接吗?
  2. 我在Google上的代码或Dialogflow和操作中还缺少其他步骤吗? 控制台?

非常感谢您的帮助。如果提供的信息不足,请告诉我。

解决方法

问题已解决,我必须选中“帐户链接”设置中的复选框,其中显示“ Google通过HTTP基本身份验证标头传输ClientId和机密”

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...