2012-03-05 8 views
15

Facebook APIを使用してユーザーのニュースフィードを取得し、一部のデータをページに表示しています。しかし、私は壁のポストに問題があります。 APIによって返されたデータは、壁投稿がユーザー投稿によって「ステータス」更新とみなされ、壁ポストが誰に書き込まれるかを示すフィールドはデータには含まれません。アイテムをクエリして壁の投稿であるかどうかを確認することは可能ですか?または、受信者の名前を受け取る方法はありますか?壁のポストはちょうど私message(ウォール投稿の内容)とstatustypeを与えるFacebook API - ウォールポストを使用したニュースフィード

FB.api('/me/home', function (response) { console.log(response) });

:ここ

は、私は、ユーザーのニュースフィードを取得するために使用していたコードです。たとえば:

オリバーが言って、ジョンの壁に書いた場合: 『こんにちは』、Facebookは私を与える:

{ 
    from: { 
     name: "Oliver" 
    }, 
    message: "Hi", 
    type: "status" 
} 

それは壁のポストでも誰が私に言うことは何もありません受信者はです。結果にはその他の任意のデータが含まれていますが、そのどれも役立ちません(id,など)

答えて

31

Facebookはこのトピックをあまりにも混乱させています。グラフAPIのユーザーオブジェクトに関するドキュメントを読むだけで、推測できます。http://developers.facebook.com/docs/reference/api/user/

/user/feedユーザーの壁。

/user/homeユーザーのニュースフィード。

/user/statusユーザーのステータスが更新されます。

/wall/user/wallと "news feed"/user/newsfeed "status updates"が/ user/statusupdatesを作ることができない理由はわかりません。

ステータス更新のリストを取得するには、現在のユーザーのHTTP取得http://graph.facebook.com/me/statuses?access_token=ValidUserAccessTokenを実行します。

ウォールストリームアイテムのリストを取得するには、HTTPを使用して現在のユーザーのhttp://graph.facebook.com/me/wall?access_token=ValidUserAccessTokenを取得します。

ホームフィードストリームアイテムのリストを取得するには、現在のユーザーのHTTP取得番号http://graph.facebook.com/me/home?access_token=ValidUserAccessTokenを実行します。

あなたは「どこから来た」と出くわして、それが誰であるのか疑問に思うときは、/me/....を呼び出すときに使用しているアクセストークンのユーザーに「」、または特定のID /UserId/...を使用している場合は、 "to"のid。


もう一つの思考:ストリームFQLテーブルオブジェクト(developers.facebook.com/docs/reference/fql/stream)から完全なオブジェクトをつかんで、それがグラフオブジェクトを介して露出することはないですが、いくつかの情報がありますかどうかを確認します。

+0

ご理解いただきありがとうございます。私は '/ me/home'を使っています。これは私にユーザーのニュースフィードを与えます。そのニュースフィードでは、それは私の友人の間に壁のポストを表示します。その場合、「to」は私が電話をするために使用しているアクセストークンのユーザーではありませんが、それが誰であるかを教えてもいません。それはまさに私の問題です。私が** Bob **の場合、私は私のニュースフィードで** Oliver **から** John **への壁紙を見ることができます。しかし、APIはそれがジョンにあるとは言いません。それは理にかなっていますか? –

+2

ストリームFQLテーブルオブジェクト(http://developers.facebook.com/docs/reference/fql/stream/)から完全オブジェクトを取得し、そこにグラフオブジェクトを介して公開されていない情報があるかどうかを確認します。 – DMCS

+1

FQLが行く方法のようです。 FQLレスポンスは、それが壁の投稿であるかどうかを伝えます。ちょうど私のコードの負荷をリファクタリングする必要があることを意味する...素晴らしい、しかしありがとう!あなたがFQLに言及するためにあなたの答えを更新することができれば、私はそれにチェックします:) –

関連する問題