我正在尝试在 iOS 应用程序中实现一个搜索栏,该搜索栏搜索用户的朋友并显示结果。我不想让所有用户都使用https://graph.facebook.com/me/friends然后搜索结果。是否可以向此类呼叫添加查询(例如https://graph.facebook.com/me/friends?q=TIM)?使用图 API 的搜索功能似乎只能公开搜索。
问问题
4962 次
2 回答
1
您可以使用 FQL:
SELECT uid, username, first_name, last_name FROM user WHERE uid IN
(SELECT uid2 FROM friend WHERE uid1 = me()) AND first_name = 'tim'
虽然不可能进行显式通配符搜索,但也不支持 LIKE 运算符。但是您可以使用该strpos
功能来伪造它。
于 2012-06-11T07:59:37.877 回答
1
正如您在 Graph API Explorer 中看到的,您无法通过 Graph API 搜索好友列表, https://developers.facebook.com/tools/explorer?method=GET&path=me /friends?q=Philip
您可以简单地获取所有朋友的列表,
然后在for
用于打印结果的循环中,您可以搜索用户名/或 ID。
一个简单的例子:
FB.api('/me/friends/', function(response) {
if (response) {
for (var i=0, l=response.data.length; i<l; i++) {
var friend = response.data[i];
if(friend.name === 'Philip') {
alert('Philip Found!');
}
}
}
});
于 2012-06-11T06:23:58.463 回答