我使用" accounts-facebook"在我的流星应用程序中设置facebook登录包。问题是,它似乎发布了它自己的数据以及我不想要的很多数据,因为它包含诸如人物Facebook页面的URL和它们的真实姓名之类的信息。有没有办法可以控制Facebook的详细信息发布?
答案 0 :(得分:0)
您可以控制发布的用户数据(http://docs.meteor.com/#meteor_users)。确保你meteor remove autopublish
。如果帐户包在默认情况下发布的用户profile
中放置的内容超出了您的要求,则可以使用Accounts.onCreateUser
自定义放入新用户文档的内容。
答案 1 :(得分:0)
如果您制作了修改后的出版物
,就会发生这种情况例如,您在代码中添加了此(或其变体)
Meteor.publish("userdata", function() {
return Meteor.users.find();
});
默认情况下,Meteor发布的用户信息不包含services
,emails
或其他非profile
属性等敏感信息。
您可以通过发布(或不发布所需的字段)来控制用户看到的数据。
Meteor.publish("userdata", function() {
return Meteor.users.find({_id: this.userId}, {fields: {'profile.name' : true} });
});
以上内容将在name
对象上发布profile
属性。您可以将其更改为其他内容。如果您想要隐藏整个用户profile
,可以添加_id: true
,以便它根本不会发布任何内容(除了用户的_id
,无论如何都会发布)