Facebook 如何仅获取正在使用我的应用程序的用户(朋友)?

Facebook 如何仅获取正在使用我的应用程序的用户(朋友)?,facebook,facebook-graph-api,cordova,Facebook,Facebook Graph Api,Cordova,我有一个PhoneGap应用程序,我需要列出所有在Facebook上授权该应用程序的用户朋友 我目前正在使用FB.api'/me/friends?fields=installed',callbacknc,但这会显示所有的朋友,指出他们中的哪些人已经授权了应用程序。当我真的只想列出授权的时候。 这大大减慢了加载好友的过程 我在这里看到了其他类似的问题,但都没有答案 解决方案:感谢 我无法成功地将FQL直接传递到FB.api,但只能使用该对象: var apiQuery = { method

我有一个PhoneGap应用程序,我需要列出所有在Facebook上授权该应用程序的用户朋友

我目前正在使用FB.api'/me/friends?fields=installed',callbacknc,但这会显示所有的朋友,指出他们中的哪些人已经授权了应用程序。当我真的只想列出授权的时候。 这大大减慢了加载好友的过程

我在这里看到了其他类似的问题,但都没有答案

解决方案:感谢 我无法成功地将FQL直接传递到FB.api,但只能使用该对象:

var apiQuery = 
{
   method: 'fql.query',
   query: 'SELECT uid, name FROM user WHERE uid IN (SELECT uid1 FROM friend WHERE uid2 = me() ) AND is_app_user'
}   

FB.api(apiQuery, function(response){...});
请改用FQL:

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

您也可以针对Graph API设置该查询,/fql?q={query}。

通过Graph使用fql会有很大帮助,我不知道这是可能的。但我试过了,但也有错误。使用围绕FQL的括号:{error:{message:601解析器错误:位置0处意外的“{”,类型:OAuthException,代码:601}}}未使用括号:{error:{message:601解析器错误:位置0处意外的“{”,类型:OAuthException,代码:601}}FB.api/FQL?q={SELECT uid,name FROM user WHERE uid IN SELECT uid1 FROM friend WHERE uid2=me AND is_app_user},callback;无括号…这只是意味着将您的查询放在那里…/fql?q=SELECT…现在不要告诉我SELECT…也会给出错误;-…我在这两种情况下都有错误。我的第一条评论非常混乱,但我写在那里。我的解决方案是使用一个对象,就像我在问题文本中编辑的那样。谢谢!这很奇怪,因为当我得到此查询的响应时,使用console.log它会显示结果,但当我尝试访问这些值时,我不会返回任何结果。实际上,这只是一个结果,但响应。数据[0]。例如,name,它对我不起作用:s