Обратите внимание, я использую underscore.js (http://documentcloud.github.com/underscore/) без конфликта:
var UnderScore = _.noConflict();
Этот запрос получает друзей на me()
, который в настоящее время зарегистрирован в Facebook пользователя. Вы можете заменить me()
идентификатором пользователя Facebook.
Код для поиска друзей:
var friends = {handles:[],ids:[],names:[]};
var q = 'select username, uid, name from user where '+
'uid IN (SELECT uid2 FROM friend WHERE uid1 = me())';
var r=FB.Data.query(q);
r.wait(function(rows){
if (UnderScore.isArray(rows) && (rows.length>0)) {
UnderScore.each(rows,function(i){
if (i.username && !UnderScore.isNull(i.username)) {
friends.handles.push(i.username.toString().toLowerCase());
if (i.name && !UnderScore.isNull(i.name)) {
friends.names[i.username.toString().toLowerCase()] = i.name
}
}
if (i.uid && !UnderScore.isNull(i.uid)) {
friends.ids.push(i.uid.toString().toLowerCase());
if (i.name && !UnderScore.isNull(i.name)) {
friends.names[i.uid.toString().toLowerCase()] = i.name
}
}
});
}
}
После запуска этого кода, который будет асинхронным событием, переменная friends
будет заполнена идентификаторами, именами и дескрипторами для друзей в Facebook.