我可以通过id
像这样访问用户,使用图形 api 从 FB 访问我的用户图像:https://graph.facebook.com/<USER_ID>/picture
但是,为了使我的代码正常工作,我需要图像的真实路径,如http://profile.ak.fbcdn.net/hprofile-ak-snc6/******_**************_********_q.jpg
FBs doc显示,通过添加?callback=foo
我可以获得输出,但是在练习它似乎不起作用。任何有关从或 使用该扩展名
获取我的图像的完整路径的建议,谢谢。.jpg
graph api
user id
问问题
2093 次
2 回答
2
回调用于 javascript 请求,
对于 php,请尝试redirect=false
在 url 中附加一个。
做一个 curl 请求,
https://graph.facebook.com/shaverm/picture?redirect=false
如果你想在 js 中使用回调,
$.getJSON('https://graph.facebook.com/zuck/picture?callback=?',function (resp) {
$('body').html(resp.data.url);
});
于 2012-11-21T03:47:44.393 回答
1
*使用以下方法,您永远不会得到错误的结果 *
$URL='FB GRAPH API URL';
$headers = get_headers($URL, 1); // make link request and wait for redirection
if(isset($headers['Location'])) {
$URL = $headers['Location']; // this gets the new url
}
$url_arr = explode ('/',$URL);
$ct = count($url_arr);
$name = $url_arr[$ct-1];
$name_div = explode('.', $name);
$ct_dot = count($name_div);
$img_type = $name_div[$ct_dot -1];
$pos = strrpos($img_type, "&");//many time you got in url
if($pos)
{
$pieces = explode("&", $img_type);
$img_type = $pieces[0];
}
$imagename = imgnameyouwant'.'.$img_type;
$content = file_get_contents($URL);
file_put_contents("fbscrapedimages/$imagename", $content);
于 2013-06-22T10:23:45.200 回答