2012-01-23 5 views
0
  1. мне нужно принести друзей данных пользователя со следующими полями: идентификатор, имя, пол, день рождения, город, страна, profileUrl, рис, pic_small, pic_big, is_app_user.Fetch данных друзей с Graph API

    Прежде чем использовать FB.Data.query, но теперь это устарело.

    FB.Data.query('select uid, first_name, last_name, name, pic, 
        pic_small, pic_big, birthday_date, sex, current_location, 
    profile_url, is_app_user from user where uid in (select uid2 from 
    friend where uid1 = {0}', uid). 
    
  2. Как найти друзей, которые используют приложение?

Я могу получить все поля, что мне нужно, но, например, для изображений, которые мне нужны для выполнения дополнительных запросов. Могу ли я получить все необходимые поля в одном запросе?

ответ

3

Вы можете использовать тот же FQL запрос с Graph API и JavaScript SDK

var query = 'SELECT uid, first_name, last_name, name, pic, pic_small, pic_big, birthday_date, sex, current_location, profile_url, is_app_user FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = ' + uid; 
FB.api('/fql',{q:query}, function(response){ 
    console.log(response.data); 
}); 

Вы наверняка также можете получить почти те же данные с Graph API не используя FQL вообще:

FB.api('/'+uid+'/friends', { 
    fields: 'id,first_name,last_name,name,birthday,gender,location,link,installed' 
}, function(response){ 
    console.log(response.data); 
}); 

У вас есть немного разные имена и другой формат (ex location) для этих деталей и пропустить информацию о снимке в результатах, но это просто, user picture is availa ble on URL-адрес в форме http://graph.facebook.com/USER_ID/picture

использование? type = square | маленький | нормальный | большой, чтобы запросить другое фото

+0

Неа. Только методы 'FB.Data. *' Устарели, см. Подробности на http://developers.facebook.com/blog/post/561/ –

+0

Большое спасибо. Но второй вариант не для меня, потому что слишком много запросов. [FQL] (http://developers.facebook.com/docs/reference/fql/ «FQL») - что мне нужно –

0

Я тоже прошу вас об этом, используя PHP. Это то, что я придумал:

$user_friends = $facebook->api('/me/friends?fields=installed'); 
$user_players = array(); 
foreach ($user_friends['data'] as $userfriend) 
{ 
    if (array_key_exists('installed', $userfriend)) 
    { 
     array_push($user_players, $userfriend); 
    } 
}  
0
The Following Helps you to fetch user's friend details using graph api 

NSString friendId =10020020 //Store Friend ID; 

NSString * pRequestString = [NSString stringWithFormat:@"%@?fields=name,picture,work,hometown,birthday,devices,interests",friendId]; 


    [[FBRequest requestForGraphPath:pRequestString ] startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) { 

     NSLog(@"%@",result); 

    }]; 
Смежные вопросы