を改造してxAuthに対応してみました。
Twitter API Wiki / OAuth Examplesのtwitteroauthを使用します。
(http://github.com/abraham/twitteroauth)
必要なファイルはOAuth.phpとtwitteroauth.phpです。
下記プログラムで実現できました。
なおxAuthはtwitterの中の人にメールを出して許可をもらわないと使えませんのでご注意ください。
getXAuthToken("your_id","your_password"); // home_timelineの取得。TwitterからXML形式が返ってくる $req = $to->OAuthRequest("https://twitter.com/statuses/home_timeline.xml","GET",array("count"=>"5")); // XML文字列をオブジェクトに代入する $xml = simplexml_load_string($req); // foreachで呟きの分だけループする foreach($xml->status as $status){ $status_id = $status->id; // 呟きのステータスID $text = $status->text; // 呟き $user_id = $status->user->id; // ユーザーナンバー(数字の方は絶対に変わらない) $screen_name = $status->user->screen_name; // ユーザーID(いわゆる普通のTwitterのID) $name = $status->user->name; // ユーザーの名前(HNなど) echo "signatureは実際どの文字列を使っているかが知りたかったら".$screen_name." / ".$name." この呟きのパーマリンク \n".$text."
\n"; } ?>
OAuth.phpのget_signature_base_stringの部分で調べる事が出来ます。
public function get_signature_base_string() { $parts = array( $this->get_normalized_http_method(), $this->get_normalized_http_url(), $this->get_signable_parameters() ); print implode('&', $parts); $parts = OAuthUtil::urlencode_rfc3986($parts); print implode('&', $parts); return implode('&', $parts); }
build_signatureでhash_hmac部分を調べる事が出来ます。
to_postdataではpostされるデータを調べる事が出来ます。