0

FB.login() が機能していません。FB ポップアップが適切な権限を要求していません。ソースコードには、適切なパラメーター/パラメーターが正しく設定されている fn ハンドラーがあることがはっきりとわかります。なぜこれが機能しないのか理解したいのですが?

これは私がこれまでに得たコードです:

http://jsbin.com/IteY/1/

これは私が許可リストを設定しているところです:

facebook.login(function(response) {
    console.log(response);
}, {scope: 'email,user_likes'});

ドキュメントに従って(https://developers.facebook.com/docs/reference/javascript/FB.login/

login() の fn ハンドラーで console.log を実行すると、fn function(response){ ... } と {scope: 'email,user_likes'} が得られます。

ここSOでFB SDKを使用して同じ問題を報告している他のユーザーを見つけました。「スコープ」の代わりに「パーマ​​」を使用するヒントを試しましたが、次のようになります。

OAuth2 仕様では、「perms」は「scope」と呼ばれるようになりました。更新してください。

  • 問題ではないようです。これは、パラメータがそこに送信されていることも示しています。なぜ機能しないのだろうか?! キャッシュも削除しました

  • もともと私はこの問題を報告しました ( AngularJS: DI Error - No module: $facebook, why isn't working? ) は解決されました。FB オブジェクトにアクセスできるようになりましたが、ユーザーから適切な権限を取得できません。これはAngularモジュールではなくFacebook APIに関連する問題だと確信しています

**** 次のように .api を使用してアクセス許可を確認しようとしました。

facebook.api('/me/permissions', function (response) {
    console.log(response);
} );

console.log レポート:

オブジェクト {エラー: オブジェクト}

***** 今、access_token を使用してグラフからアクセスしようとしました:

https://graph.facebook.com/me/permissions?access_token=XXXXXXXX

適切な権限を確認できますが、Facebook のログイン ポップアップでは権限について尋ねられませんでした。そうじゃない?

  {
     "data": [
        {
           "installed": 1,
           "basic_info": 1,
           "email": 1,
           "read_friendlists": 1,
           "user_likes": 1,
           "user_online_presence": 1,
           "user_friends": 1
        }
     ],
     "paging": {
        "next": "xxxxxxx"
     }
  }

管理者としてサンドボックスに追加した別のユーザーに尋ねたところ、必要な権限ポップアップが表示されました。したがって、キャッシュなどを削除しようとしたにもかかわらず、この権限が既に設定されている自分のユーザー名または何かを使用して、何かを行う必要があると思います。

したがって、解決する問題はありません。これが将来他の誰かに役立つことを願っています!

経験者なら誰でも見学できますか?

ありがとうございました

4

1 に答える 1

0

Facebook のログイン イベント / statuschange にリスナーをアタッチしてみてください。

$facebookProvider.Event.subscribe('auth.authResponseChange', function (response) {
    console.log(response);
})

そして、応答要素を見て、エラーがあるかどうかを確認します

于 2013-08-23T19:10:37.803 に答える