正常に動作するアプリを作成しましたが、モバイル デバイスでは動作しません。ユーザーがアプリにログインした後、ループに陥り、 $data["user_id"] が空に見えます。私が使用しているコードスニペットは次のとおりです。
$canvas_page = 'https://m.facebook.com/apps/'.$app_id;
$auth_url = "https://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($canvas_page)
. "&scope=user_birthday";
$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')),
true);
if (empty($data["user_id"])) {
echo("<script> top.location.href='" . $auth_url . "'</script>");
}
誰でも理由がわかりましたか?