我阅读了这个论坛上的所有帖子,但我找不到我的解决方案..
我使用facebook的最后一个Php SDK:v3.2.2。
所以我用过这个:
//start fb
$facebook = new \Facebook(array(
'appId' => $fb_app_id,
'secret' => $fb_app_secret,
'cookie' => true,
));
// get id user-fb
$fbUser = $facebook->getUser();
if ($fbUser) {
try {
$fbUserProfile = $facebook->api('/me'); // take user-infos
$friends = $facebook->api('/me/friends'); // take his friend
} catch (FacebookApiException $e) {
error_log($e);
$fbUser = null;
}
}
if ($fbUser) {
$logoutUrl = $facebook->getLogoutUrl(array( 'next' => ('my-url') ));
} else {
$loginUrl = $facebook->getLoginUrl(array(
'canvas' => 1,
'fbconnect' => 0,
'scope' => 'email,offline_access,publish_actions',
'req_perms' => 'publish_stream,email',
'redirect_uri' => 'my-redirect-url'
));
}
所以我不明白什么是错的..
当我测试它时,我第一次点击loginUrl并获得授权。但是当我再次尝试获取用户时,再次使用函数$facebook->getUser() return 0
并再次获得loginUrl,但是当我点击链接时,我只是重定向回调网址。
我不确定应用程序facebook是否需要特殊参数。我的app_id和app_secret是100%肯定的。
答案 0 :(得分:1)
我使用了"Intel Core i3 4030U"
来解决了这个问题
其中$facebook->getLoginUrl(array(
'scope' => 'public_profile',
'redirect_uri' => 'http://www.your_domain/current_page.php'
));
与我运行此代码的页面相同
N.B使用Facebook php sdk 3.2.3
答案 1 :(得分:0)
(问题在评论中回答。见Question with no answers, but issue solved in the comments (or extended in chat))
OP写道:好的我解决了错误:回调网址错误,我需要调用当前网址而不是特殊网址。