2011-01-05 116 views

回答

2
FB.api('/me', function(response) { 
    var location = response.location.name; 
}); 
1

FaceBook文檔包含您正在查找的信息,包括示例代碼和說明。它可在:

http://developers.facebook.com/docs/guides/canvas

您也可以找到圖形API有用:http://developers.facebook.com/docs/api

+2

作爲一個小提示,通常,你會想要回答的不僅僅是一個鏈接。包括示例代碼和詳細說明是產生高質量答案的好方法。我編輯你的答案只是一點點,以幫助你。 – Josh 2011-01-06 06:12:57

+0

@josh歡迎n保持支持 – magna 2011-01-06 09:45:23

9

你的朋友被認爲是用戶,讓你去user documentation,得到字段名location(以請發送fields參數)並且您檢查您是否需要特定權限:

需要user_location o r friend_location許可

然而,有一個錯字!爲了得到你的朋友的位置,你需要friends_location(與s),reference

下面是一個PHP-SDK例如:

$facebook->api('/friend_id', 'get', array("fields"=>"name,location")); 

在這裏,我檢索namelocation領域(請注意,id域將自動檢索)。

+0

這是否適合您?我真的無法讓它工作。只有名字被返回(正確地要求friendS_location的燙髮)。 – grm 2011-02-08 22:11:38

+0

@grm:是的,它** **但你的朋友應該設置城市出現!我發現有40%的朋友沒有設置它! – ifaour 2011-02-08 23:08:04

+0

請記住,位置字段返回一個對象。爲了檢索位置,你必須使用$ profile ['location'] - > name。 – 2012-11-12 14:21:18

2

最快的方式讓你從你可以使用FQL方法的用戶的朋友希望所有的信息:

$this->api->api(array('method'=>'fql.query','query'=>"SELECT uid,name,first_name,middle_name,last_name,pic_square,hometown_location,current_location,profile_url,email,website FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())")); 

與他們對應的列名的所有表的列表,我指的是:Facebook FQL Reference &欄=位置

1
fql?q=SELECT locale,current_location from user where uid in(select uid2 from friend where uid1=me()) 

需要user_loca重置或friend_location權限

0
FB.api('/me', function(response) { 
    document.getElementById("UserLocation").innerHTML = response.location.name; 
}); 

在您的HTML代碼中調用UserLocation任何HTML標記中的Id。恩。

<div id="UserLocation"></div>