Facebook签署了不提供所有信息的请求

时间:2013-01-23 22:26:20

标签: php facebook codeigniter

我已将SDK正确放入我的CI设置中,并运行了一些这样的代码:

    if (!empty($_POST['signed_request'])) {
        $signed_request = $_POST['signed_request'];
    }
    list($sig, $payload) = explode('.', $signed_request, 2);
    $data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
    var_dump ($data);

我只收到此代码中部分的信息,如下所示:

  

array(6){[“algorithm”] => string(11)“HMAC-SHA256”[“expires”] => int(1358985600)[“issued_at”] => int(1358978635)[“oauth_token”] => string(116)“AAACPRZBPSwx0BADKZBGikSA09ZCJeWDcOZCWYG0FoFZAgSkZB6TnBQftKZAM3LFG9itoAwoYQ3bDeZCuyZBoPXvxqMTrAonrIphlQY4g0KPChwZDZD”[“user”] => array(3){[“country”] => string(2)“us”[“locale”] => string(5)“en_US”[“age”] => array(1){[“min”] => int(21)}} [“user_id”] => string(9)“---------”}

(出于显而易见的原因阻止了我的user_id!)

我通过网上无数的教程告诉我,我应该可以使用这段代码来判断该应用是否“喜欢”:

if ($data["page"]["liked"]) { echo "yes"; } else { echo "no"; }

我在这里错过了什么吗?

1 个答案:

答案 0 :(得分:0)

  

我被告知在线无数教程我应该可以使用此代码来确定应用程序是否“喜欢”

不能“喜欢”应用。

可以喜欢的是Facebook页面,如果您的ap作为页面选项卡嵌入到该页面中,那么您将获得sign_request中的相关信息,该信息会发布到您的应用上iframe的初始负载。