-1

重複の可能性:
Facebook Graph API を使用してユーザーのネットワーク情報を取得する方法は? (PHP)

Facebook ユーザーが所属する大学または高校のネットワークを取得するにはどうすればよいですか? 以前は affiliations 要素がありましたが、新しい Graph API にはありません。

4

1 に答える 1

1

Graph API を使用してこの情報を取得する方法はありません。グラフ APIのユーザー オブジェクトworkにはとのキーが含まれていますeducationが、これらはユーザーのネットワーク アフィリエーションとは異なり、グラフ API を介してアクセスすることはできません。

代わりに、FQL を使用する必要があります。user テーブルaffiliationsの列を使用して、ユーザーのネットワーク所属を取得できます。それが本当にあなたがしたいことなら、あなたが知る必要があるのはそれだけです。

ただし、(可能性が高いように) ユーザーのネットワークへの所属に厳密に関心があるのではなく、教育歴に広く関心がある場合は、注意してください。前述のように、Facebook のデータとaffiliationsは異なります。特定の高校または大学をプロファイルの「教育」セクションに入力したユーザーが、その学校または大学のネットワークにも参加しているという保証はありませんが、参加している可能性があります。さらに悪いことに、たとえば、誰かが大学を教育セクションに追加し、その大学のネットワークにも参加した場合、その大学は別の名前で表示される可能性がありますworkeducation「ネットワーク」列と「教育」列。これは、誰かが通った学校や大学の重複なしに完全なリストを取得することは簡単ではなく、あなたの側でいくつかの巧妙なハックを必要とすることを意味します.

たとえば、ユーザー テーブルからと を選択するaffiliationsと、私の友人の 1 人が次のように表示されます。education

"affiliations": [
        {
          "nid": 16777585, 
          "name": "Oxford University", 
          "type": "college"
        }, 
        {
          "nid": 33585181, 
          "name": "Queens College, Taunton", 
          "type": "high school"
        }
      ], 
      "education": [
        {
          "school": {
            "id": 110611448960664, 
            "name": "Queens College, Taunton"
          }, 
          "type": "High School"
        }, 
        {
          "school": {
            "id": 16686610106, 
            "name": "University of Oxford"
          }, 
          "type": "College"
        }
      ]

彼女の教育セクションには「University of Oxford」が含まれていますが、彼女の所属では「Oxford University」になっていることに注意してください。ユーザーの教育履歴をきれいに取得できるようにしたい場合は、これらが重複していることを特定するために何か賢いことを行う必要があります。

あなたが直面している混乱のアイデアを得るには、このクエリを実行して、すべての友達の「教育」と「所属」フィールドを確認してください。

幸運を!

于 2012-10-31T18:57:01.373 に答える