【问题标题】:Google Oauth flow in MeteorMeteor 中的 Google Oauth 流程
【发布时间】:2015-08-01 02:55:35
【问题描述】:
在 Meteor 应用中,谁能指导我如何让用户简单地 Oauth Google?
有 accounts-google 包,但我不希望用户能够使用它登录,只需要 oauth 和存储凭据。
文档提到“如果您只想在不使用帐户的情况下向 Twitter、Facebook 或 Google 等 Oauth 服务进行身份验证——也就是说,如果您不想让用户登录,您只需要一个 OAuth 令牌 –您可以直接使用 twitter、facebook 和 google 等底层服务包。”,但没有任何关于 google 包的文档。
任何指导将不胜感激。
【问题讨论】:
标签:
meteor
oauth
oauth-2.0
google-api
google-oauth
【解决方案1】:
Oauth 的软件包就是为了做到这一点。如果你想用它来获取人们的凭据
有两种选择:
1) 修改 google 和 accounts-google 包的来源,删除登录的部分。恐怕没有文档,最好理解它是内联 cmets。
2) 使用另一个环境包将帐户-google 与现有登录名合并。所以他们已经登录但可以使用Meteor.logInWithGoogle() 登录谷歌,这与他们现有的帐户合并。这样他们就不必使用 Google 登录,但您可以存储 OAuth 令牌。为此,您可以使用bozhao:link-accounts 包或mikael:accounts-merge 包:
// ON THE CLIENT:
Meteor.signInWithGoogle ({}, function (error, mergedUserId) {
// mergedUsers is set if a merge occured
if (mergedUserId) {
console.log(mergedUserId, 'merged with', Meteor.userId());
}
});
然后,您会在现有的 Meteor.user() 文档的 services.google 中找到 google OAuth 令牌数据。