php - Twitter 请求 - 正确的方式

标签 php twitter

我目前在每个页面加载时请求 Twitter 提要(我知道这是错误的),如下所示:

json_decode(file_get_contents("http://api.twitter.com/1/statuses/user_timeline/{$username}.{$format}")); 

即使流量很小,Twitter 也很快停止向我发送请求。因此,在为我的客户启动网站后 - 我发现 Twitter 源永远不可用。

我想象的这种工作方式是检查提要 - 将其存储在带有时间戳的表中,然后选择一个时间间隔 -(比如 10 分钟)。在每次页面加载时,检查时间戳,如果时间间隔尚未过去,则从表中提取提要,而不是从推特中提取。

我知道这会奏效,但考虑到我上次犯的错误太愚蠢了,我想确保没有其他更好的做法。

这次我做对了吗?

最佳答案

听起来完全正确。三个注意事项:

  1. 将日期/时间放在一列中,将您想要显示的推特提要放在另一列中,然后您只需对该行进行一次选择即可完成。

  2. 将呈现的 HTML 存储在数据库中,而不是从 Twitter 返回的 JSON。然后,您只需每十分钟而不是在每次页面请求时进行一次转换。

  3. 全部在数据库中或全部在服务器上进行时间比较,不要混淆两者 - 我遇到过服务器时间不同步的问题,这让我很头疼。也就是说,不要使用“INSERT ... CURTIME() ...”调用,然后将其与 PHP 生成的日期进行比较。我的建议是生成一个 PHP 日期并存储它,因为在 SQL 中进行时间比较可能很棘手。

关于php - Twitter 请求 - 正确的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8584568/

相关文章:

php - 如何查看以下系统中的反向关系

java - 将 Twitter 流 API 集成到 Java Web 应用程序中

javascript - Twitter Feed API 停止工作

ios - 发送推文后应用卡住

python - 如何将 MongoDB 中的 JSON 插入的created_at字段转换为Python中的日期时间对象

jquery - 需要帮助了解 Twitter Bootstrap 插件 (jQuery)

php - 从 PHP 中注销 session 的正确方法

php - SELECT * 在列的 MAX 和第二个 MAX id 之间,其中另一列等于某个输入

php - MySQL : select the last action of each user

php - Symfony 2.1 Doctrine 装置安装