我正在使用 PHP 来显示来自用户的最新推文。这是在 Wordpress 中。这在大多数情况下都有效 - 但有时,我会收到此错误:
file_get_contents( http://api.twitter.com/1/statuses/user_timeline/[username].json ) [function.file-get-contents]:打开流失败:HTTP 请求失败![...]/twitter.php 第 47 行中的 HTTP/1.1 400 错误请求
我绝对确定我不会超过 Twitter API 限制,因为即使我的缓存代码有缺陷,其他人也无法看到这一点——它是在本地托管的——而且我无法在一小时内查看该页面 150 次. 我已经测试过确实正在检索用户名和数据库条目。这是我的代码:
<?php
function twitter($username) {
$tweet = '';
echo $username;
if (!get_option('twitter_last_updated')) {
$format='json';
$tweet_raw=file_get_contents("http://api.twitter.com/1/statuses/user_timeline/{$username}.{$format}");
$tweet = json_decode($tweet_raw);
add_option('twitter_last_updated', time(), "", "yes");
add_option('twitter_last_updated_author', $username, "", "yes");
add_option('twitter_last_updated_data', $tweet_raw, "", "yes");
} elseif (time() - get_option('twitter_last_updated') > 30 || get_option('twitter_last_updated_author') != $username) {
$format='json';
$tweet_raw=file_get_contents("http://api.twitter.com/1/statuses/user_timeline/{$username}.{$format}");
$tweet = json_decode($tweet_raw);
update_option('twitter_last_updated', time());
update_option('twitter_last_updated_author', $username);
update_option('twitter_last_updated_data', $tweet_raw);
} else {
$tweet = json_decode(get_option('twitter_last_updated_data'));
} ?>
<!-- display the tweet -->
<?php } ?>
我真的很感激这方面的一些帮助。我觉得完全被难住了。