Facebook getLoginUrl在URL中返回代码变量

时间:2013-07-22 22:06:18

标签: php facebook login sdk

我一直在努力让FB PHP SDK登录功能正常运行。问题出在登录URL上,这对我不起作用。单击要登录的链接,由

生成
//Generate FB log in and log out links
function FBLinks() {
    global $FB;
    if($this->GetFBID()) {
        return 'https://www.facebook.com/logout.php?next='.BASEURL.'/logout.php&access_token='.$FB->getAccessToken();
        } else {
        return $FB->getLoginUrl($params = array('scope'=>'email'));
    }
}`

,生成类似https://www.facebook.com/dialog/oauth?client_id=1525824323423421&redirect_uri=http%3A%2F%2Fmyurl.com%2F&state=b89f0cd22895184a2f0e2f0fe3155d39&scope=email

的链接

点击后,我需要:http://myurl.com/?code=AQBbMggtb5YxycOEB5BaBWzrqCuTJ6nWokOID4MvoyQ81BtIetAtzVe71dyXI9b6vvXdZ4fLHaMrumraQz2VeU2qcYFr9DbbZQ5ApRHVivUsv3L3h0UbV0X5A3eP34WvBhlNpWVpfm8kxUI8dv8s4XkmzydVIm3BDR71HGv65zV0w-FBEyg97-SLlFxP71iBeNvQCDqZRBVBkxEsjyxdlmqu7tIZGBl0ws4DI2wtrTuuf5DL4iVHq7NPOFomIyfCGt-73t24EbsfzLnq9ezi_U59V938oU9Zi3dEiiGHi7lFezPHT1oILe6CxaVR0Zecyb0&state=b89f0cd22895184a1f0e2f0fe3555d39#_=_

没有显示任何内容。

我需要对代码变量做些什么吗?

非常感谢任何帮助。我读 facebook login returns code as variable in query string并且看起来OP与我有同样的问题,但无法在我的最终解决问题。

最诚挚的问候, RICHI

~~ 阅读更多关于它,似乎我需要以某种方式交换访问令牌的代码..

2 个答案:

答案 0 :(得分:1)

如果你使用官方的facebook sdk,你不必关心代码参数 - 这个参数是来自sdk的php脚本的handeld。 您只需使用getUser()函数并检查值($ fbid)!= 0 之后,您可以使用您想要的观察者查询fb api

$fbid = $this->facebook->getUser();

if ($fbid) {
    $profile = $this->facebook->api("/me");
}

答案 1 :(得分:0)

我弄清楚出了什么问题并修好了。 FB代码与我自己的代码冲突。谢谢你的时间。