繁体   English   中英

获取Facebook用户个人资料图片,而无需他们登录到Facebook

[英]Get Facebook user profile picture without them being logged into Facebook

当他们通过Facebook登录到我的网站时,某些用户在我的数据库中存储了Facebook ID。 对于这些用户,我想存储一个个人资料图片,可以从他们的Facebook帐户中检索该图片。

Facebook PHP SDK指定了以下获取用户图片的方式:

/* PHP SDK v4.0.0 */
/* make the API call */
$request = new FacebookRequest(
  $session,
  'GET',
  '/me/picture'
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
/* handle the result */

问题是$session参数。 当前,当用户通过Facebook登录到我的网站后,我得到了FacebookSession对象。 但是,对于我想要实现的目标,我没有参加本次会议。

在只有用户ID且没有将他们登录到Facebook的情况下,PHP SDK是否可以获取Facebook用户个人资料图片?

我希望这有帮助,

http://graph.facebook.com/USERNAME OR USERID/picture?type=large

http://graph.facebook.com/USERNAME或USERID / picture?type = small http://graph.facebook.com/USERNAME或USERID / picture?type = square

您无需使用USERNAME或USERID登录Facebook。 这是简单,基本的事情,只需要使用Google搜索就可以了。如果您不打算这样做,请详细说明您正在执行的任务...

祝好运!!!

只需通过GET请求使用以下Graph路径:

/{user_id}?fields=picture.type(large),id,name

字段类型可以是以下值之一:

  • 正常
  • 广场

或使用像这样的宽度和/或高度值:

/{user_id}?fields=picture.width(200).height(200),id,name

您也可以添加redirect = 0参数。 默认情况下,图片边缘将返回图片而不是JSON响应。 如果您希望图片边缘在发出请求时返回描述图像集的JSON的JSON,则JSON = 0。

因此,您将获得以下JSON响应:

{
  "picture": {
    "data": {
      "height": 120,
      "is_silhouette": false,
      "url": "https://scontent.xx.fbcdn.net/hprofile-xaf1/v/t1.0-1/c53.10.120.120/165675_138088076251005_752993_n.jpg?oh=a9450bf53f2d2294531e11ae28be99c1&oe=56C740A5",
      "width": 120
    }
  },
  "id": "138087416251071",
  "name": "Zenonis",
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM