0

http://apps.facebook.com/myappnameに、 http://mydomain.comのキャンバス ページであるアプリがあります。

ユーザーに mydomain.com にアクセスさせたくないので、http://apps.facebook.com/myappnameにリダイレクトしたいと思います。

これを行うには何が最適ですか?javascript、php、およびhtaccessを介してリダイレクトしようとしましたが、Facebookが私のURLを使用してキャンバスページをロードするため、エラーが発生します。これに対する解決策はありますか?

4

2 に答える 2

2

JavaScript:

function referrerIsFacebookApp() {
    if(document.referrer) {
        return document.referrer.indexOf("facebook.com") !== -1;
    }
    return false;
}
if (!referrerIsFacebookApp()) {
    top.location.replace("http://apps.facebook.com/APP_NAME_SPACE");
}

PHP:

function referrerIsFacebookApp() {
    if (strpos($_SERVER['HTTP_REFERER'], "facebook.com") === false || strpos($_SERVER['HTTP_REFERER'], "facebook.com/l.php?u=") !== false) {
        return false;
    }
    return true;
}
if (!referrerIsFacebookApp()) {
    header("Location: http://apps.facebook.com/APP_NAME_SPACE");
}
于 2012-06-22T21:40:51.950 に答える
0

アプリを iframe にロードするときに、signed_request パラメータ転送を確認するだけです。

于 2012-06-22T15:57:17.480 に答える