Facebook图形API - 获取用户所在国家
问题描述:
我想获取用户所在国家的用户家乡。Facebook图形API - 获取用户所在国家
我使用的是最新的图形API v2.3的,我知道FQL在此版本中弃用,因此我可以不再使用Facebook Graph API - how to get user country?
的唯一方法是通过图形API做到这一点,但棘手的事情是
$fb_user = (new FacebookRequest($session, 'GET', '/me'))->execute()->getGraphObject(GraphUser::className());
var_dump($fb_user->getProperty('hometown'));
只返回位置页编号和名称,然后我做
$graph_obj_hometown = (new FacebookRequest($session, 'GET', '/' . $hometown_id, array('locale' => 'en_US')))->execute()->getGraphObject();
var_dump($graph_obj_hometown->asArray());
在它里面没有任何一个国家的信息,任何人都知道如何获得用户的COUNTR ÿ?
另外,我还试图让用户的家乡作为GraphLocation对象,那么也许我可以用getCountry()方法,但它仍然没有工作
$fb_user->getProperty('hometown', 'Facebook\GraphLocation');
对象只存储位置的名称和位置页面ID物体。
任何人都可以帮我吗?
答
得到家乡页面ID后,查询: https://graph.facebook.com/v2.5/HOMETOWN_ID?fields=location 生成的对象将包含国家。
+0
这不起作用。 – Green
您必须先问领域 – WizKid
@WizKid是正确的 - 试试我/ fields = hometown并确保您的应用授予了user_hometown权限?如果是这样,你应该获得以下格式的家乡的pageId: {“hometown”:{“id”:“110769888951990”,“name”:“Dublin,Ireland”},“id”:“772082842826394”} – Neil
@尼尔是的,我已经做到了,所以我说“返回位置页面的ID和名称” –