READ_STREAM を使用して、その友人が関係ステータスを変更した (そしてその情報を公開した) および/または現在の都市をいつでも確認する FQL クエリを作成しています。この場合、その人の現在の Relationship_status は「独身」に設定されています。次にクエリを実行して、ユーザーが「交際中」から「独身」になった時期を確認します。
SELECT post_id, created_time, source_id, actor_id, target_id, message, description, type FROM stream WHERE source_id = 100003540518168 and (strpos(description, 'relationship') >= 0 or strpos(description, 'Relationship') >= 0 or strpos(description, 'single') >= 0 or strpos(description, 'Single') >= 0) LIMIT 500
友人が交際から独身になった場合のインスタンスを返しますが、最初にその関係に入った時期を示す情報は返されません (クエリは単語のみを検索し、特定の順序で単語を検索するのではなく、何かを検索します)。 Relationship と single という単語は関係なく表示される必要があります)。ここで、彼女の現在の relationship_status を「In a Relationship」に変更して、まったく同じクエリを実行してみましょう。
SELECT post_id, created_time, source_id, actor_id, target_id, message, description, type FROM stream WHERE source_id = 100003540518168 and (strpos(description, 'relationship') >= 0 or strpos(description, 'Relationship') >= 0 or strpos(description, 'single') >= 0 or strpos(description, 'Single') >= 0) LIMIT 500
以前のクエリのようにこのデータが存在することは明らかですが、彼女が独身になったことについては何も言及せずに、彼女がいつ関係を結んだかを示すデータのみを返します。
「現在の都市」変数を使用して同じことを複製しました。現在の都市をカリフォルニア州ロサンゼルスと記載している場合は、別の都市 (カリフォルニア州サンタモニカなど) への移動を反映するようにタイムラインを更新してください。最初にロサンゼルスに住んでいた履歴はすべて失われています。ただし、「現在の都市」をロサンゼルスに戻すと、サンタモニカについて言及することなく、ロサンゼルスに住んでいたすべての時間が戻ってきて利用できるようになります。これは、関係のステータスに固有のものではないことを証明しています.
これは API だけでなく、Facebook Web サイトの私自身のアクティビティ ログにもあります。交際ステータスを交際中に変更した 後: 交際ステータスを独身に戻した後:
Facebook と共有したように、タイムラインがあなたの人生の歴史であると想定されている場合、すべての変更、移動、Graph API、FQL クエリを介して利用可能、およびアクティビティ ログにリストされるべきではありません (ユーザーが情報公開)?データは明らかに API にありますが、現在の設定に基づいてのみ利用可能になります。これはバグですか?ユーザーの現在の設定だけに基づくのではなく、1 回の呼び出しですべてのデータを取得する回避策はありますか?