我想获取个人资料的图片网址。要获得名称,请执行以下操作:
$fb = new \Facebook\Facebook([
'app_id' => '{app_id}',
'app_secret' => '{app_secret}',
'default_graph_version' => 'v2.5',
'default_access_token' => '{access_token}',
]);
$response = $fb->get('/me');
$name = $response->getGraphObject()->asArray();
$name = $name['name'];
echo $name;
使用相同的逻辑,我尝试使用以下命令获取个人资料图片网址:
$fb = new \Facebook\Facebook([
'app_id' => '{app_id}',
'app_secret' => '{app_secret}',
'default_graph_version' => 'v2.5',
'default_access_token' => '{access_token}',
]);
$response = $fb->get('/me/picture');
$pic = $response->getGraphObject()->asArray();
$pic = $pic['url'];
echo $pic;
而且它没有用。从图资源管理器中,我知道调用/ me / picture时得到的内容是这样的:
{
"data": {
"is_silhouette": false,
"url": "https://scontent.xx.fbcdn.net/ etc etc "
}
}
因此,我确定我打的是正确的电话,但是当我尝试获取网址时,我将其弄乱了。我的想法是去数据对象,但我无法获得url值。我也尝试了get领域,但没有运气:
$pic = $response->getGraphObject()->asArray();
$pic->getField('url');
删除-> asArray()没什么区别。最后,我以这种方式尝试了一下,但是再没有运气了。
$object = $response->getGraphObject();
$pic = $object->asArray('data');
$pic = $pic['url'];
echo $pic;
任何帮助,将不胜感激 :)
因此,基本上我发现有一个名为getGraphUser的函数。
$response = $fb->get('/me?fields=picture');
$user = $response->getGraphUser();
$name = $user->getPicture();
echo $name['url'];
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句