3

目前,我们查询 Twitter 用户的时间线,file_get_contents以获取我们一次缓存一分钟的 JSON 提要,而且生活还不错。然而,在我们数百个网站中的一些开始出现问题(当 Twitter 开始帮助删除旧的 XML url 时),我注意到他们明年将更改为 API 1.1,我们需要对请求进行身份验证。

所以,我基本上是在寻找一个正确方向的简单指针。到目前为止,我假设以下内容:

  1. 新的 GET 资源看起来很相似,奖金!
  2. 由于我们只显示该用户的推文,因此我们只需要一个 dev.twitter.com 令牌
  3. 似乎我们需要为我们所做的每个网站在该用户的帐户上创建一个新令牌。
  4. 我们可能必须安装一个类似于 twitteroauth 的库,如https://dev.twitter.com/docs/auth/oauth/single-user-with-examples#php

正如我所说,我们只是显示拥有我们正在构建的网站的用户的推文。人们不登录或发布或类似的东西。

我知道有嵌入的时间线,但这些时间线几乎无法定制,出于同样的原因,我已经讨厌 Facebook 的“Like Box”。(但我也知道Twitter 的“显示要求”除了可能的颜色之外几乎没有提供任何灵活性......

那么,考虑到这一点,这是最简单的方法吗?这似乎相对简单(我的意思是 twitteroauth 在设置后会在 7 行或更少的时间内完成获取请求),最大的痛苦听起来像是必须通过获取访问密钥来与每个用户交谈。

谢谢。

4

1 回答 1

0

Twitteroauth肯定会让你在这方面领先一步。请记住,尽管在 twitter 文档中,您只能在 15 分钟内完成 180 个时间线请求,如果您超过该时间,我认为他们会限制您大约一个小时(可能会更少)。如果您希望能够向您展示每条推文而不是您获得的最后一个 ID,您还应该阅读有关时间线的内容。当然,如果您实时执行所有这些操作,那么您的网站会在向 Twitter 发出请求时变慢。

我不会使用file_get_contents,主要是因为它比 curl 稍慢,而 twitteroauth 提供了更好的 IMO 界面,为您减少了编码,并且可以在 git 中分叉。

所以,是的,缓存你的结果,并留意你在 1.1 分配的 15 分钟内发出了多少请求。如果你过去,你会后悔一个小时,这适用于每个使用你的密钥的应用程序。

希望有帮助

于 2012-11-12T18:21:29.237 回答