访问Meteor JS应用程序中的用户电子邮件地址
问题描述:
我正在使用Meteor构建应用程序,并且需要访问已登录用户的已存储电子邮件地址。访问Meteor JS应用程序中的用户电子邮件地址
我目前正在使用:
var userObj = Meteor.user();
console.log(userObj);
访问用户。但是,我只能访问该ID。电子邮件地址存储在一个嵌套的对象,看起来像这样:
[Object {address="[email protected]", verified=false}]
我已经试过各种方法遍历JSON对象,但无法弄清楚如何获得我所需要的价值。
答
Meteor.user().emails[0].address
适合我。
这里的医生说什么:
默认情况下,服务器发布的用户名,电子邮件和个人资料。有关用户文档中使用的字段的更多信息,请参阅 Meteor.users。
示例用户文档:
{
_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: 1349761684042,
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 }
]
}
}
}
答
你不指定要如何验证用户身份。例如,如果你只使用谷歌认证的电子邮件地址将只在
Meteor.user().services.google.email
所以发现,它依赖。
+0
如果他的控制台有他发布在OP中的对象,然后他使用帐户密码或类似的东西,他只是没有想不出如何正确访问属性。 – Rahul
答
试试这个:
Meteor.user()电子邮件[0]。地址
问候,
'userObj [0] .address',也许?我不确定,重写JSON是愚蠢的:( – Ryan
哈哈不工作虽然..返回undefined – squeezemylime