-1

可能重复:
如何使用 Facebook Graph API 获取用户的网络信息?(PHP)

如何获取 Facebook 用户所属的大学或高中网络?之前有 affiliations 元素,但在新的 Graph API 中不存在。

4

1 回答 1

1

无法使用 Graph API 获取此信息。图形 API的用户对象包含 和 的键workeducation但这些与用户的网络从属关系不同,不能通过图形 API 访问。

您需要做的是使用 FQL。您可以使用user 表affiliations的列获取用户的网络从属关系。如果这真的是你想要做的,那么这就是你所需要知道的。

但是,如果(似乎很可能)您对用户的网络从属关系并不完全感兴趣,而是对他们的教育历史更广泛感兴趣,请注意!如前所述,与 Facebook 的数据affiliations不同并存work在于educationFacebook 的数据中。无法保证进入特定高中或大学进入其个人资料的“教育”部分的用户也加入了该学校或大学的网络……但他们可能已经加入。更糟糕的是,例如,如果某人将一所大学添加到他们的教育部门并加入了该大学的网络,则该大学可能以不同的名称出现在“网络”栏和“教育”栏。这意味着要获得一份不重复某人就读过的学校或大学的完整列表并非易事,并且需要一些聪明的技巧。

例如,当从用户表中进行选择时affiliationseducation我的一个朋友显示如下:

"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"
        }
      ]

请注意,她的教育部门包括“牛津大学”,但在她的附属机构中,它是“牛津大学”。如果您希望能够干净地提取用户的教育历史,您需要做一些聪明的事情来识别这些是您的重复。

要了解您面临的混乱情况,请运行此查询以查看您所有朋友的“教育”和“从属关系”字段。

祝你好运!

于 2012-10-31T18:57:01.373 回答