如何知道Facebook是否重定向到我的网站(Facebook PHP SDK)

时间:2014-03-17 18:16:25

标签: php facebook facebook-php-sdk

我尝试使用facebook PHP SDK与facebook集成以进行登录

$loginUrl = $facebook->getLoginUrl(array(
"scope" => "email,name",
"next" => "http://localhost/provider/facebook/auth?is_facebook=$someurl",
));

但是当facebook重定向到我的网站时,我不会得到is_facebook param。我的猜测是如何知道它的Facebook是否重定向到我的网站

3 个答案:

答案 0 :(得分:1)

查看用户是否来自Facebook的更好方法是查看HTTP引荐来源。你可以这样做:

if ( isset( $_SERVER['HTTP_REFERER'] ) && strstr( $_SERVER['HTTP_REFERER'], 'facebook.com' ) ) {
    echo 'User came from facebook';
}

这样,即使GET变量在某处丢失,您仍然会知道该用户来自Facebook。您可以将此项与is_facebook=true一起用于额外验证。

答案 1 :(得分:0)

在这种情况下,您只需设置is_facebook=true或类似内容。由于您在此明确设置,Facebook将重定向到该URL,您将知道该用户来自Facebook ...或者他们复制并粘贴了一个URL。

出于任何安全原因,您不能依赖此,但对于一般分析,这已经足够了。

答案 2 :(得分:0)

“localhost”不在互联网上(因此无法找到),因此您不会收到回复。