2011-09-02 8 views

답변

0

, 그럴 수이 FQL 쿼리 :

SELECT uid, name, pic FROM user 
WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) 
AND is_app_user = 1 

전체 기능 :

function getFriends() { 
    FB.login(function(response) { 
     if (response.session && response.perms) { 
     FB.api(
      { 
      method: 'fql.query', 
      query: 'SELECT uid, name, pic FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) AND is_app_user = 1' 
      }, 
      function(response) { 
      alert('Friends using app: ' + JSON.stringify(response)); 
      } 
     ); 
     } 
    } , {perms:''}); 
} 
+0

안녕하세요, 답변입니다. 앱에있는 친구 만 있으면됩니다. 친구들과 함께 ID를 얻습니다 .getAppUsers. 그래서 나는 이드마다 이름과 그림이 필요하다. 몇 가지 요청을 따르고 싶지는 않지만, id의 집합에 대한 이름과 그림을 얻는 방법이 필요합니다. – degressor

+0

답을 업데이트했습니다. 당신이 당신의 앱 사용자를 찾고 있다는 것을 알지 못했습니다. – bkaid

0

를 사용하여 API 요청에 fields 매개 변수 :

fields=name,id,picture 

기본적으로 그래프 API는 name 및만 반환합니다.. fields 목록에 자신의 프로필 사진을 지정하면 그림이 제공됩니다.

FB.api('/me/friends', { fields: 'name,id,picture' }, function(response) { 
    // ... 
} 

UPDATE : 그래서 자바 스크립트 SDK를 사용하여 전체 요청을 이런 식으로 뭔가 보일 것 당신이 이미 가지고있는 ID의 집합에 대한 사진을 얻을 수를, 당신과 같이 FQL을 사용해야합니다 :

SELECT uid, name, pic FROM user 
    WHERE uid IN (uid1, uid2, uid3,...) 

uid1 등을 ID 목록으로 대체하십시오.

또는 batch request을 사용하여 /uidX/picture에 대한 여러 API 요청을 한 번에 실행할 수 있습니다. 나는 얼마나 많이 자바 스크립트 SDK가 도움이 될지 모르겠다. 가치가있는 것보다 많은 작업이 필요할 수 있습니다. 나는 FQL과 함께 가고 싶다.

+0

하지만 이드의 세트가 있다면 어떻게하면 즉시 얻을 수 있습니까? – degressor

+0

FQL을 사용해야합니다 (내 업데이트 참조). 정기적 인 그래프 API가 그런 필터링을 할 수 있는지 모르겠다 (비록 내가 틀린 것으로 증명 될지는 몰라도). – chesles

관련 문제