微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

强制FACEBOOK GRAPH API显示个人资料网址图片,而不是下载它

如何解决强制FACEBOOK GRAPH API显示个人资料网址图片,而不是下载它

使用Facebook API Graph 8.0,我得到了JSON

https://graph.facebook.com/v8.0/1234567890?fields=picture&redirect=false&access_token=my_secret_token

具有以下内容

{
  "picture": {
    "data": {
      "height": 100,"is_silhouette": false,"url": "https://platform-lookaside.fbsbx.com/platform/profilepic/?asid=1234&height=100&width=100&ext=1234&hash=abc","width": 100
    }
  },"id": "1234567890"
}

但是当我尝试做一个

<img src="https://platform-lookaside.fbsbx.com/platform/profilepic/?asid=1234&height=100&width=100&ext=1234&hash=abc">

不起作用,并且在浏览器中下载并没有显示

我如何使用图像和/或如何检索Facebook个人资料URL来显示它?

预先感谢

解决方法

如果您只想显示图像,则显示图像的方法比用访问令牌查询图形api然后显示图像要简单得多。

您可以直接将其与<img>标签一起使用。

只需将/picture添加到a​​pi调用的结尾

<img src="https://graph.facebook.com/1234567890/picture">

您还可以请求不同的尺寸,例如

<img src="https://graph.facebook.com/1234567890/picture?width=360&height=900">

或带有

的方形缩略图
<img src="https://graph.facebook.com/1234567890/picture?type=square">

有关更多信息,请在此处检查: Facebook graph api v8 User Picture 通知

Facebook有两种UID,一种是每个用户加入facebook.com时分配的原始UID,另一种是每个用户在安装facebook应用程序时获得的App-Scope UID。在调用/me之类的端点时,您的应用程序将始终检索应用程序范围UID。获取原始UID的方法是通过使用不同技术手动收集原始UID或将其设置为自动执行此步骤。

在user_id是原始UID时,facebook将弃用/user_id/picture端点访问照片,除非提供了access_token,否则不应打扰任何人,因为除非您尝试调试应用程序并且无法弄清原因,否则所有应用程序都会获得应用程序范围UID。它不起作用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。