我目前在每个页面加载时请求 Twitter 提要(我知道这是错误的),如下所示:
json_decode(file_get_contents("http://api.twitter.com/1/statuses/user_timeline/{$username}.{$format}"));
即使流量很小,Twitter 也很快停止向我发送请求。因此,在为我的客户启动网站后 - 我发现 Twitter 源永远不可用。
我想象的这种工作方式是检查提要 - 将其存储在带有时间戳的表中,然后选择一个时间间隔 -(比如 10 分钟)。在每次页面加载时,检查时间戳,如果时间间隔尚未过去,则从表中提取提要,而不是从推特中提取。
我知道这会奏效,但考虑到我上次犯的错误太愚蠢了,我想确保没有其他更好的做法。
这次我做对了吗?
最佳答案
听起来完全正确。三个注意事项:
将日期/时间放在一列中,将您想要显示的推特提要放在另一列中,然后您只需对该行进行一次选择即可完成。
将呈现的 HTML 存储在数据库中,而不是从 Twitter 返回的 JSON。然后,您只需每十分钟而不是在每次页面请求时进行一次转换。
全部在数据库中或全部在服务器上进行时间比较,不要混淆两者 - 我遇到过服务器时间不同步的问题,这让我很头疼。也就是说,不要使用“INSERT ... CURTIME() ...”调用,然后将其与 PHP 生成的日期进行比较。我的建议是生成一个 PHP 日期并存储它,因为在 SQL 中进行时间比较可能很棘手。
关于php - Twitter 请求 - 正确的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8584568/