【问题标题】:How to get twitter profile information with meteors accounts-twitter?如何使用流星账户-twitter 获取 twitter 个人资料信息?
【发布时间】:2018-08-20 21:57:39
【问题描述】:

我根据official meteor docs 使用accounts-twitter 包在我的meteor 应用程序中构建了一个twitter 登录。

但是当我尝试通过查询来获取用户的 Twitter 账号信息时:

Meteor.users.find().fetch();

我只得到一个 profile 对象,其中包含 twitter 屏幕名称,但没有其他数据。如何获取其他数据,例如头像等?

我期待一个包含this tutorial 中所述信息的service 对象。

我正在使用带有帐户的 Meteor 1.6-twitter@1.4.1

【问题讨论】:

  • 账户 twitter 仅使用oauth 提供登录功能,因此仅存储登录令牌。它不是为使用 twitter API 而设计的。
  • 真的吗?有多个教程(包括上面的一个)描述了如何访问 twitter 个人资料信息。我什至得到了推特网名。
  • 哦,好的,我明白了。当你输入 db.users.find().pretty() 时,你的 mongo 控制台返回什么?

标签: meteor twitter meteor-accounts


【解决方案1】:

如果您在客户端执行此查询,请确保您实际上不仅发布了“配置文件”字段,还发布了“服务”字段。 在您的发布功能中,确保您返回一个像这样的光标 return Meteor.publish("allUsers", function() { return Meteor.users.find({}, { fields : { profile : 1, services : 1 } }) }) 这将仅发布所有用户及其个人资料和服务字段(+ _id 始终包含在内)。然后确保在您的页面上订阅该发布以获取该数据(这通常发生在页面的控制器中)Meteor.subsribe("allUsers")。然后你应该也能看到服务字段了。

【讨论】:

  • 工作就像一个魅力,谢谢!顺便说一句,该属性被命名为services,带有一个尾s。
  • @AdrianKrebs 没问题,很高兴它成功了。是的,我的错字,已修复以供将来参考,谢谢。
猜你喜欢
  • 2019-09-14
  • 2023-03-18
  • 1970-01-01
  • 2014-09-15
  • 1970-01-01
  • 2012-04-25
  • 1970-01-01
  • 1970-01-01
  • 2016-06-08
相关资源
最近更新 更多