我正在设置一个流星应用程序,该应用程序涉及使用用户名和密码进行注册,然后希望将该帐户与facebook和twitter连接。
有了帐户包,我就可以轻松启动并轻松运行第一部分。但是,当我有一个登录用户叫Meteor.loginWithFacebook()时,它将注销它们并创建一个新帐户。我想要的是将facebook凭据添加到当前登录用户的东西。
流星文档具有以下内容:
{
_id: "bbca5d6a-2156-41c4-89da-0329e8c99a4f", // Meteor.userId()
username: "cool_kid_13", // unique name
emails: [
// each email address can only belong to one user.
{ address: "[email protected]", verified: true },
{ address: "[email protected]", verified: false }
],
createdAt: Wed Aug 21 2013 15:16:52 GMT-0700 (PDT),
profile: {
// The profile is writable by the user by default.
name: "Joe Schmoe"
},
services: {
facebook: {
id: "709050", // facebook id
accessToken: "AAACCgdX7G2...AbV9AZDZD"
},
resume: {
loginTokens: [
{ token: "97e8c205-c7e4-47c9-9bea-8e2ccc0694cd",
when: 1349761684048 }
]
}
}
}
这似乎是一个用户名也已通过Facebook认证的帐户。但是我不确定这是否仅仅是您不能用基本的Meteor东西真正实现的示例。
我想做的基本上是
Meteor.connectWithExternalAccount();
它与Meteor.loginWithExternalAccount()的运行过程相同,只是将信息添加到当前登录的用户中。
如果有人能稍微解释一下帐户基础软件包,那么我就能知道从哪里开始,那将是很棒的。
另外,有人知道它是否会包含在未来的Meteor版本中吗?
因此,已经有工作来解决此问题,但是不幸的是,拉取请求https://github.com/meteor/meteor/pull/1133从未合并。最好的选择是检查以流星为核心的Google网上论坛,看看是否有任何评论,如果没有,请看看您是否可以让核心开发者对此发表评论。
如果您仍然希望使用pull请求,则可以删除各种Meteoraccounts-*
包,然后在项目的根目录中创建一个/packages
文件夹,然后在其中复制yubozhao的补丁accounts-*
包(可能很聪明地添加-custom
)。然后meteor add accounts-base-custom
,您需要等将其添加到您的项目中。
但是请注意,yubozhao在6到7个月前写道,您可能需要继续使用当时最新的任何版本的Meteor。
2014年4月更新:现在有一个Atmosphere程序包,其中包含一个可能有用的类似用例:https : //atmospherejs.com/package/accounts-merge
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句