如何从Facebook获取个人资料照片
问题描述:
我正在尝试获取Facebook个人资料照片。我正在使用以下值代替#########。运行PHP后,我收到一条消息“Hello”。 我想让我的名字也像“Hellow Aditya”以及我的个人资料照片一样。我应该编辑什么来获取?也可以将个人资料图片保存在服务器上吗?如何从Facebook获取个人资料照片
<?php
$app_id = ###############;
$app_secret = "#################";
$my_url = "###################";
session_start();
$code = $_REQUEST["code"];
if(empty($code)) {
$_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection
$dialog_url = "https://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($my_url) . "&state="
. $_SESSION['state'];
echo("<script> top.location.href='" . $dialog_url . "'</script>");
}
if($_REQUEST['state'] == $_SESSION['state']) {
$token_url = "https://graph.facebook.com/oauth/access_token?"
. "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url)
. "&client_secret=" . $app_secret . "&code=" . $code;
$response = file_get_contents($token_url);
$params = null;
parse_str($response, $params);
$graph_url = "https://graph.facebook.com/me?access_token="
. $params['access_token'];
$user = json_decode(file_get_contents($graph_url));
echo("Hello " . $user->name);
}
else {
echo("The state does not match. You may be a victim of CSRF.");
}
?>
答
你可以这样说: http://graph.facebook.com/[USER ID] /图片
@ blaff-感谢您的快速响应。 我不明白我怎么能从上面的代码执行它? 我应该在哪里放置代码? – Yahoo 2012-04-20 07:47:24
你可以这样使用:
2012-04-20 09:48:09
@Yan - Hellow :) 当我运行上面的代码时,我得到的只是单词”你好“,但根据代码我认为我应该得到”Hellow Aditya(USERNAME) “BuT这个没有发生 当我粘贴 - http://graph.facebook.com/me/picture?type=large 我得到令牌错误2500 消息”:“必须使用一个活动的访问令牌来查询信息关于当前用户。“, 你能帮我解决这个问题吗 – Yahoo 2012-04-20 11:52:57