1

私は次のようなリクエストを行っています:

https://graph.facebook.com/USER_ID/posts?access_token=TOKEN

TOKENがGraphAPIExplorerからのものである場合(自分のユーザーアカウントとしてログインしているhttps://developers.facebook.com/tools/explorerから)、ほとんどのユーザーにいくつかの投稿が表示されます。

TOKENが、クライアント側のフロー[*]の結果として、自分のアプリと自分のユーザーアカウントのユーザートークンである場合、{ "data": [] }ほとんどの人にわかります。

何が違いを引き起こす可能性がありますか?私の知る限り、2つのトークンには同じ権限が与えられています( 2つのトークンについてhttps://graph.facebook.com/me/permissions?access_token=TOKENから同じリターンが得られます)。

私が考えることができるのは、私が探している投稿のユーザーは私のアプリのユーザーではないということだけですが、おそらく誰もが魔法のようにAPIExplorerのユーザーです。しかし、私が彼らについて見たい情報は、ユーザーページとAPI Explorerトークンを使用したグラフの両方で私に表示されるので、これはセキュリティ上の制限はなり得ません。私は情報を表示するトークンを取得できます。欲しいが、私のアプリはできません。したがって:

  • アプリを使用しているときに投稿が表示されないのはなぜですか?
  • 私はそれについて何をしますか?
  • 現在の理論では、APIエクスプローラーには公開データにアクセスするための特別な権限があり、他のアプリはそれを取得できません。これは本当にそうですか、それとも自分のアプリで公開データを表示するために何かできることはあります/postsか?

[*] URLの使用: https: //www.facebook.com/dialog/oauth?client_id = MY_APP_ID&redirect_uri = https://www.facebook.com/connect/login_success.html&scope=manage_pages,read_stream,read_requests,user_location,user_activities&response_type =トークン

4

1 に答える 1

1

私はあなたが言っていることを理解しています。私はそれを自分でテストしましたが、同じ結果が得られました。以下は私が考えていることですが、あくまで推測です。

今テストしたところ、グラフ エクスプローラー アプリを使用したときに返されるデータは、新しい友達や公開投稿など、ユーザーの公開データです。Facebookでユーザーのプロフィールにアクセスすると、まったく同じデータが表示されます。

アプリが公開データを取得しないのはなぜですか? Facebook は特定のアプリに特別な権限を与えており、Facebook のアプリであるグラフ エクスプローラーの場合、Facebook がまさにそれを行ったと考えるのはそれほどおかしなことではありません。理論をテストするために、グラフ エクスプローラーに対して持っているすべての権限を削除し、友人ではないユーザーの投稿を取得しようとしましたが、実際に同じ結果が得られました。「me/posts」でテストしたところ、公開されたものだけでなく、自分の投稿も取得できました。独自のアプリからアクセス許可を削除すると、投稿でもデータが返されます: []

アプリは、ログインしているユーザーとその友達のデータのみを取得できます。

于 2012-05-10T17:49:13.883 に答える