流星:loginWithGoogle 不更新用户的权限范围
Meteor: loginWithGoogle without updating permission scope of user
我的 Meteor 应用程序允许用户使用 Google 和 email/password 注册和登录。
使用 Google 登录时,我只请求 email
权限。登录后,用户可以转到用户设置和Connect Google Calendar
,这会将日历权限添加到用户范围(通过执行另一个loginWithGoogle
请求日历权限)。
问题是,每次用户从登录页面使用 Google 帐户登录时,scope
对象都会被 loginWithGoogle
函数更新,并且日历范围会被删除(因为这里的登录功能只请求电子邮件权限)。
有没有什么方法可以在没有 updating/replacing 范围的情况下登录用户?我无法从登录页面请求日历权限,因为我希望用户能够决定是否要将他们的日历与应用程序同步。
谢谢。
如果其他人正在寻找答案,解决方案很简单,就是在登录选项中添加一个选项 include_granted_scopes:true
。
即
Meteor.loginWithGoogle({
requestPermission: ['email'],
loginUrlParameters: {include_granted_scopes: true}
}, function(err){})
我的 Meteor 应用程序允许用户使用 Google 和 email/password 注册和登录。
使用 Google 登录时,我只请求 email
权限。登录后,用户可以转到用户设置和Connect Google Calendar
,这会将日历权限添加到用户范围(通过执行另一个loginWithGoogle
请求日历权限)。
问题是,每次用户从登录页面使用 Google 帐户登录时,scope
对象都会被 loginWithGoogle
函数更新,并且日历范围会被删除(因为这里的登录功能只请求电子邮件权限)。
有没有什么方法可以在没有 updating/replacing 范围的情况下登录用户?我无法从登录页面请求日历权限,因为我希望用户能够决定是否要将他们的日历与应用程序同步。
谢谢。
如果其他人正在寻找答案,解决方案很简单,就是在登录选项中添加一个选项 include_granted_scopes:true
。
即
Meteor.loginWithGoogle({
requestPermission: ['email'],
loginUrlParameters: {include_granted_scopes: true}
}, function(err){})