【问题标题】:Ideal way to keep a user's Facebook information updated?保持用户 Facebook 信息更新的理想方式?
【发布时间】:2012-03-05 01:17:36
【问题描述】:

我正在开发一个使用 mongoDB 作为数据库的 node.js 应用程序。我正在开发相当简单的 Facebook 集成,除了将用户身份验证外包给 FB,我还想检索用户的 FB 朋友列表,以便他们以后可以选择通过应用程序。

不过,我不知道解决这个问题的最佳方法到底是什么。显然,这些信息经常变化(新朋友等) - 所以我不能简单地将朋友保存到我的数据库中,然后用户第一次登录然后忘记它。同时,每次登录时从 FB 获取用户的好友列表似乎是不切实际的。另一种选择是根本不保存好友列表,而只需在每次需要时向 Facebook 发送 GET 请求——这可能是不过效率相当低,特别是如果我开发更多与 FB 功能的集成。最后,我阅读了有关 Facebook 实时订阅 API 的信息——https://developers.facebook.com/docs/reference/api/realtime/。这将允许我即时更新好友列表 - 但可能需要我开发更多的工作。

我认为这是一个相当普遍的挑战,所以我想知道其他人如何解决这个问题,以及是否有一种“最佳实践”方式在独立应用程序中管理 FB 信息?

【问题讨论】:

    标签: facebook node.js facebook-graph-api mongodb


    【解决方案1】:

    这实际上取决于您将使用这些数据的目的。你可以做两件事:

    • 在需要时获取并缓存好友列表,几分钟/几小时后过期
    • 获取一个脚本,每隔一小时左右轮询一次所有用户好友列表,以保持更新

    【讨论】:

    • 有道理。我决定暂时在需要的时候获取好友列表(使用一个 UI 元素显示 GET 生成时的加载状态)。我想在我开始添加更深入的 FB 集成后,我会尝试想出一种更好的方法来存储/更新数据库中的数据。
    【解决方案2】:

    能否提供类似于 Facebook 小部件的概念帮助。在“仅查看”模式下,它可以显示缓存在数据库中的朋友列表,因为小部件区域无论如何都显示完整朋友列表的子集。在要进行更新的情况下(提名朋友或类似的东西),您应该查询 Facebook 以确保数据是最新的。

    【讨论】:

      猜你喜欢
      • 2017-09-14
      • 1970-01-01
      • 2013-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-29
      • 1970-01-01
      • 2013-01-12
      相关资源
      最近更新 更多