【问题标题】:Better quality photo from passport-facebook来自passport-facebook的质量更好的照片
【发布时间】:2015-06-15 11:27:39
【问题描述】:

如何从passport-facebook 获得更高质量的图片,我在photos[0].value 收到的图片是 50x50,这很差,我希望至少 150x150。我试图弄乱链接 - 没有运气。是否可以检索质量更好的头像?

编辑:我当前的 fb 策略设置:

passport.use(new FacebookStrategy({
    clientID: 'xxxxxx',
    clientSecret: 'xxxxx',
    callbackURL: 'http://localhost:4242/facebook/cb',
    profileFields: ['id', 'name', 'displayName', 'photos', 'hometown', 'profileUrl'],
    passReqToCallback: true
}, ...

【问题讨论】:

  • 您应该至少显示一些代码...
  • 老实说,我认为这个问题没有代码就很清楚,我可能是错的,补充说。

标签: facebook-graph-api passport.js passport-facebook


【解决方案1】:

您应该能够指定 profileFields 属性,如

中所述

像下面这样检索更大的图片:

passport.use(new FacebookStrategy({
    // clientID, clientSecret and callbackURL
    profileFields: ['id', 'displayName', 'picture.type(large)', ...]
  },
  // verify callback
  ...
));

或者您可以将第 221 行的 passport-facebook 模块的 strategy.js 文件更改为

'photos':      'picture.type(large)'

【讨论】:

  • 它看起来合法,但也许我做错了什么,但我在任何地方都找不到可能的配置文件字段列表,啊,知道了,源中有一个列表,你已链接。
  • 是的。但正如我所说,我收到了低分辨率图片,picture.type(large) 工作,但我不知道为什么。我什至可以在哪里看到有关我可以在 profilefileds 中指定 picture.type(large) 的文档和信息,以及我还可以在那里指定什么?
  • 因为这是一个 Graph API 功能。查看 Facebook 文档。
  • 好的,我会的,(但是,感觉它的链接或某种提及可以在 passprot-facebook 文档中提供,这可能非常有用)所以,谢谢你的帮助=)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-01
  • 2013-08-31
  • 1970-01-01
  • 2019-01-15
  • 2012-06-13
  • 1970-01-01
相关资源
最近更新 更多