Facebook Graph API - 获取用户所在国家/地区

时间:2015-04-07 04:20:23

标签: php facebook facebook-graph-api

我想通过用户的家乡来获取用户的国家/地区。

我使用的是最新的Graph API v2.3,我知道此版本已弃用FQL,因此我无法再使用Facebook Graph API - how to get user country?

唯一的方法是通过Graph API来实现,但棘手的是

$fb_user = (new FacebookRequest($session, 'GET', '/me'))->execute()->getGraphObject(GraphUser::className());

var_dump($fb_user->getProperty('hometown'));

只返回位置页面ID和名称,然后我

$graph_obj_hometown = (new FacebookRequest($session, 'GET', '/' . $hometown_id, array('locale' => 'en_US')))->execute()->getGraphObject();

var_dump($graph_obj_hometown->asArray());

其中没有国家/地区信息,任何人都知道如何获取用户的国家/地区?

另外,我试图将用户家乡作为GraphLocation对象,然后我可以使用getCountry()方法,但它仍然无法正常工作

$fb_user->getProperty('hometown', 'Facebook\GraphLocation');

对象仅在对象中存储位置名称和位置页面ID。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

获取家乡页面ID后,查询: https://graph.facebook.com/v2.5/HOMETOWN_ID?fields=location 生成的对象将包含国家/地区。