很抱歉,如果这是一个新手问题,但我希望有人可以提供一些建议。
我正在通过Express应用程序实现我的Google Assistant意图。我希望我的操作的用户能够从其Strava帐户获取和修改数据。 Strava支持Google身份验证,我想知道是否可以使用诸如Passport(https://www.npmjs.com/package/passport-strava-oauth2)之类的节点库来允许用户登录其strava帐户,以便我的操作可以调用其数据?
我有一个获取一些Google个人资料数据的欢迎意向,所以想知道我是否可以通过此回复传递一些详细信息?
googleApp.intent('Default Welcome Intent', (conv) => {
conv.ask(new Permission({
context: 'Hi, can I get your details from your Google account?',
permissions: 'NAME'
}));
});
答案 0 :(得分:0)
是的,但可能不是您所看的方式。
Permission
助手请求访问特定类型的信息-名称和位置。您正在寻求建立更多的身份关系(使用他们的电子邮件地址或Google帐户)。
您可以使用Account Linking进行此操作。
如果您确定要在Strava上使用Google登录,那么事情会变得更加轻松,并且可以利用Google Sign In for Assistant。这样,他们登录后,您的操作将获得一个身份令牌,您可以使用该令牌获取信息,包括其Google ID和与已登录的Google帐户相关联的电子邮件地址。他们只需要登录一次-之后,只要他们连接,就会获得一个身份令牌。
如果您的Strava项目和您的Action都使用同一个Google Cloud Project,则对您的用户来说事情变得更加轻松。他们在任一客户端上登录后,they're signed in on the other one。这样您就可以通过身份令牌立即知道他们是谁。