到目前为止,我已设置检索基本的用户信息,没有任何扩展。我也试图获得用户的电子邮件,没有成功。这是我得到的:使用Facebook的PHP SDK来检索电子邮件
$facebook = new Facebook(array(
'appId' => APP_ID,
'secret' => APP_SECRET,
'cookie' => true,
));
$session = $facebook->getSession();
if (!empty($session)) {
try {
$params = array(
'scope' => 'email',
'redirect_uri' => 'https://www.dormduels/splash_test'
);
$loginUrl = $facebook->getLoginUrl($params);
$uid = $facebook->getUser();
$access_token = $facebook->getAccessToken();
echo $access_token;
$user = $facebook->api('me?fields=name,first_name,last_name,username,email&access_token='.$access_token);
echo "<pre>";
print_r($user);
exit();
问题是。在Facebook图形浏览器中测试时,它显示的getAccessToken不显示扩展数据,如电子邮件,只有基本的。我如何请求启用更多权限的访问令牌?
更新我的问题与getLoginUrl没有运气 – 2012-07-17 19:50:49
我认为你可能会把它放在一个错误的地方(这个例子在这种情况下是一个语法错误),你应该把getLoginUrl()调用放在'if($ facebook-> getUser )){...',也只是调用它不会将用户重定向到t他的网址返回。你需要发送一个http头或其他方式来发送浏览器,比如'header(“Location:”。$ loginUrl);' – complex857 2012-07-17 19:58:15
已更新为新的sdk,你是对的我已经过时了,并且将getloginurl移入了if用户,但仍...没有...没有权限的访问令牌正在givin – 2012-07-17 20:12:12