アプリケーションが完成したので、オンラインにするために、アプリケーションのページで「サンドボックス モード」を無効にしました。開発者としてログインしている場合はアプリケーションを実行できますが、それ以外の場合は 404 エラーが発生します... Facebook は数分かかる可能性があると言いましたが、午前 11 時に「サンドボックスモード」を無効にしました!! Facebook は私のアプリを検証する必要がありますか?
質問する
119 次
1 に答える
-1
私は解決策を見つけました:アプリの承認を求めるためにheader('location:xxx.php')を使用することはできません($ loginUrlがnullであるため)次のようにする必要があります:
try {
// On récupère l'UID de l'utilisateur Facebook courant
// On récupère les infos de base de l'utilisateur
$me = $fb->api('/me');
} catch (FacebookApiException $e) {
// S'il y'a un problème lors de la récup, perte de session entre temps, suppression des autorisations...
// On récupère l'URL sur laquelle on devra rediriger l'utilisateur pour le réidentifier sur l'application
$loginUrl = $fb->getLoginUrl(
array(
'canvas' => 1,
'fbconnect' => 0,
'redirect_uri' => 'http://www.facebook.com/pages/Point-dEncre-France-Page-officielle/178099798924693'
)
);
// On le redirige en JS (header PHP pas possible)
echo ("<script>top.location.href='".$loginUrl."'</script>");
しかし、ユーザーをキャンバスアプリにリダイレクトするには、使用する必要があります
header('location:xxx.php')
ではなく
<script>top.location.href="xxxx"</script>
それ以外の場合、FBはユーザーをキャンバスビューからリダイレクトします。
そして別のヒント:「ユーザーID」をデータベースに保存する場合は、「int」列ではなく「bigint」列を使用してください。
それが人々を助けることを願っています
于 2012-12-01T10:47:18.597 に答える