「巨大なページ」には何の問題もありません。「巨大なページ」にはファンからの投稿やシェアがたくさんあるだけです。実際、このstream
表はページのすべてのアクティビティを提供します。
type
ストリームアクティビティの対象は、null
コンテンツがユーザーからのものである場合です。ページ所有者からの場合はintになります。https://developers.facebook.com/docs/reference/fql/stream/type
のフィールドの説明を参照してください。
null
をとして取得する理由は、またはフィールドがに設定されlike count
ている投稿に出くわしたためです。これらの投稿は、ページの外(つまり、ユーザーのタイムラインまたは特定のWebサイト)に存在し、所有者が(公開されている場合でも)公開のいいねやコメントを許可していないため、いいねやコメントを付けることはできません。あなたがページのストリームでそのような活動を見つけるつもりであるならば、彼らが彼らのメッセージまたは写真でページにタグを付けたからです。can_like
can_comment
false
最初のコメントに答えて編集します。
質問:次のクエリでページの所有者からの投稿が返されないのはなぜですか。
SELECT actor_id, message
FROM stream
WHERE source_id = 40796308305
AND actor_id = 40796308305
このクエリが返すことができる結果の数を見てみましょう。
SELECT actor_id, message
FROM stream
WHERE source_id = 40796308305
さて、17の結果が得られます。なぜ17?知らない。
リクエストに追加AND actor_id = 40796308305
すると、これらの17の結果の中からどれがとしてあるかがチェックされ40796308305
ますactor_id
。
答え?なし!
最初の17個の結果のみをチェックするため、LIMIT
:を指定する必要があります。
SELECT actor_id, message
FROM stream
WHERE source_id = 40796308305
AND actor_id = 40796308305
LIMIT 100
そして、そこにあなたはあなたが望むものを手に入れます。
これは、FacebookAPIの微妙な点の1つです。ここに記載されています:https ://developers.facebook.com/blog/post/478/