-1

私はこのURLを認証に使用しています:

https://www.facebook.com/dialog/oauth?
     client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&scope=email,read_stream

正常に動作していますが、このコードを使用すると、常に0の値が返されます。

$user = $facebook->getUser();

ここで何が問題になっていますか?

4

1 に答える 1

1

それが 0 を返す場合、ユーザーは Facebook にログインしていません。認証では、ユーザーが URL に送信されるだけで、要求されたアクセス許可が付与されない場合 (つまり、ログインしない場合)、ユーザー ID を取得できません。

また、最新の PHP ライブラリ (3.1) を使用していることも確認してください。古いバージョンは、Facebook が現在使用している Cookie 構造と互換性がありません。その場合、getUser 呼び出しは常に 0 を返します。

また、URL にリダイレクトするのではなく、インラインですべてを実行する認証/要求許可に JavaScript を使用することもできます。

于 2011-12-10T14:39:58.830 に答える