【问题标题】:Getting Twitter friends to allow user to tag them in post让 Twitter 朋友允许用户在帖子中标记他们
【发布时间】:2012-02-15 05:56:42
【问题描述】:

我正在使用以下 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 一起使用。欢迎任何其他想法。

更新:

我决定使用 DB 方法,查询所有朋友需要很孤独,所以我宁愿尽可能少做。现在,您将如何更新此列表?

【问题讨论】:

    标签: php jquery mysql twitter


    【解决方案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

    【讨论】:

    • 我检索了 ID,以便获取用户名,这就是问题所在,我需要的是屏幕名称,并且无法参数化对 API 的调用,您必须提供的唯一信息搜索是名称。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多