0

Facebook の JS SDK と Graph API を使用してアプリを構築しようとしていますが、その過程で少し混乱しました。アイデアは、ユーザーが自分のタイムラインで作成したすべての投稿を取得することです。これを行うにはドキュメントに記載されているように、フィード接続を呼び出して、ユーザーが自分のウォールに投稿することを表す投稿オブジェクトの配列を取得する必要があります。

問題は、標準リクエストを使用して最後の 30 件の投稿を取得する場合です (read_stream パーミッションを使用)。

FB.api('/me/feed?limit=30&format=json', function(response) {
      //operations on response.data
}

応答グラフ API では、ユーザーが作成したタイムラインの投稿だけでなく、他の人の投稿に対するコメントの一部も返します。そのため、フィードは「ユーザーの壁」だけを返すわけではないようです。ドキュメントに書かれているように投稿しますが、ユーザーが投稿したすべてのもの。*/user_id/posts* へのリクエストは、ほとんど同じ結果をもたらしています。

紛らわしいのは、ユーザーのタイムラインへのテキスト投稿と、他の人の投稿へのコメントが同じ種類の「ステータス」を持っていることです。それらの違いは、タイムライン投稿は「メッセージ」フィールドにコンテンツがあり、コメントは「ストーリー」にテキストが保存されることです。

私の質問: リクエスト自体の中で、ユーザーが作成したタイムラインの投稿のみを並べ替える方法はありますか?

4

1 に答える 1

1

/{user-id}/postsしたがって、Facebook がドキュメントを更新した後、ユーザーが公開した投稿のみを表示するために呼び出す必要があることは明らかです。

/{user-id}/feed一方、 を呼び出すと、投稿のフィードが返されます。これには、ステータスの更新や、ユーザーまたはユーザーのプロフィールの他のユーザーによって公開されたリンクが含まれます。

いわゆる「派生エッジ」の詳細については、https ://developers.facebook.com/docs/graph-api/reference/user/#edges をご覧ください。

于 2014-02-16T21:23:59.210 に答える