我使用以下Twitter API调用来获取用户关注的人员列表:
https://dev.twitter.com/docs/api/1/get/users/lookup https://dev.twitter.com/docs/api/1/get/friends/ids
这个想法是允许用户将DM发送给他们的朋友。现在我面临一个性能问题,我想看看其他人是如何解决它的。我有两个选择:
1)每当用户登录时,如果他们有Twitter帐户我查询朋友列表,按字母顺序在数组中索引以便于访问并将其存储在用户的会话中。他的问题在于,每次用户登录时都会这样做,所以如果他跟随很多人,那将花费很长时间,因为它一次只能查找100个用户,而且还有速率限制协议。优点是它始终将用户列表更新。
2)当用户将他的Twitter帐户与我的网站关联并将其存储在数据库中时,执行相同的操作,这将使我更容易搜索朋友列表,因为我可以使用LIKE执行SELECT查询得到一个匹配列表,无论用户输入什么,我只是不确定这是否明智,因为它会占用大量空间。
我正在使用PHP与CakePHP框架和JQuery。欢迎任何其他想法。
更新
我决定采用数据库方法,只需要查询所有朋友,所以我宁愿尽可能少地做。现在,您将如何更新此列表?
答案 0 :(得分:1)
除了检索用户,您还可以只检索ID,并在需要时搜索用户的额外信息。
这是jQuery中的一个例子
$.getJSON('http://api.twitter.com/1/friends/ids.json?screen_name=smashingmag&callback=?', function(data) {
$.each(data.ids, function(idx, item) {
console.log('userId: ' + item);
});
});
有关该方法的详细信息,请参阅:https://dev.twitter.com/docs/api/1/get/friends/ids