我正在使用getSignedRequest();和signed_request检查访问者是否喜欢该页面。
当我转到我的页面标签时,它显示了iframe中的外部网站,getSignedRequest();和signed_request正确提取信息并在index.php页面上显示。但是,一旦我喜欢(或不喜欢页面),甚至做一个window.location.reload(); - 或者当我离开index.php页面并再次返回它时,getSignedRequest();并且signed_request不会触发。当我导航到我的index.php并手动刷新浏览器时,getSignedRequest();和signed_request火,一切都很好。
有谁知道我可能做错了什么?为什么getSignedRequest();而signed_request只触发一次?
这是有问题的页面:
http://www.facebook.com/pages/RT/367570243261944?sk=app_327979357253049
我尝试过这两种方法:
$signed_request = $facebook->getSignedRequest();
以及
if (isset($_REQUEST['signed_request'])) {
$encoded_sig = null;
$payload = null;
list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2);
$sig = base64_decode(strtr($encoded_sig, '-_', '+/'));
$signed_request = json_decode(base64_decode(strtr($payload, '-_', '+/'), true),true);
} else {
echo "ERROR";
}
谢谢!