次のコードを使用して、クライアントの Web サイトに最新のツイートのリストを表示するように要求します。
if (file_exists( 'twitter.json' ))
{
$file = file_get_contents( 'twitter.json');
$data = json_decode($file);
if ($data->timestamp > (time() - 60 * 60) ) // if timestamp is NOT older than an hour
{
$twitter_result = $data->twitter_result;
}
else
{
$twitter_result = file_get_contents('http://api.twitter.com/1/statuses/user_timeline.json?q=@Twitter&rpp=1&screen_name=Twitter&count=1');
if( $twitter_result === false) /* something went wrong with API request */
{
$twitter_result = $data->twitter_result;
}
else
{
$json = array ('twitter_result' => $twitter_result, 'timestamp' => time());
file_put_contents( 'twitter.json', json_encode($json) );
}
}
header("content-type:application/json");
if($_GET['callback'])
{
echo $_GET['callback'] . '(' . $twitter_result . ')';
}
else
{
echo $twitter_result;
}
exit;
}
else
{
echo 'twitter.json does not exist!';
exit;
}
ただし、1.0 API は減価償却されているため、機能しなくなります。1.1 API で動作するように試みましたが、ドキュメントに記載されているように認証を実装する方法がわかりません。誰かが私を正しい方向に向けることができますか? 可能であれば、上記のコードの変更を最小限に抑えたいと考えています。ありがとう。
私は例えば試してみました:
https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=twitterapi&count=2&oauth_token=123&oauth_token_secret=123
123 はトークンとシークレットですが、これも機能しませんか?