我會使用FQL和查詢user
表爲current_location
字段,它會返回一個更全面,結構合理的反應:使用新的fql
SELECT current_location FROM user WHERE uid=me()
您可以嘗試在Facebook的圖形API探險終點。這將返回類似:
{
"data": [
{
"current_location": {
"resultType": {
"fieldTypes": {
"street": {
"strict": false
},
"city": {
"strict": false
},
"state": {
"strict": false
},
"country": {
"strict": false
},
"zip": {
"strict": false
},
"latitude": {
"min": null,
"max": null,
"strict": false
},
"longitude": {
"min": null,
"max": null,
"strict": false
},
"id": {
"min": null,
"max": null,
"strict": false
},
"name": {
"strict": false
}
},
"includeNullFields": false
},
"street": null,
"city": "Beirut",
"state": "Beyrouth",
"country": "Lebanon",
"zip": "",
"latitude": null,
"longitude": null,
"id": 106188806084417,
"name": "Beirut, Lebanon"
}
}
]
}
通知的city
,state
和country
領域是否有與不一致name
場一起。
另一個有趣的地方......有時Facebook會爲非美國(如巴黎,法國)返回「城市,國家」,但有時它似乎會返回「地區,城市,國家」(如新宿區,東京,日本)。呃...只是把我所有的代碼都封裝在if循環中,查找狀態名稱以確定是否爲外來的。不漂亮,但它的工作原理.. – rICh