はい、備忘録です。
Twitter APIでアプリケーションを作成するにあたって、PEARを使った方法はいろいろあるんだけど、なんとなく内容を把握せずに使うのも気がひける、っつーことで、素のPHPコードで試してみる。
特に、リクエストトークンを取得するまでが超面倒なんで、そこの部分だけ晒してみるテスト。
Product Advertising APIを触ってて良かった。
以下ソース。
TWTR_CONSUMER_KEY, 'oauth_signature_method' => 'HMAC-SHA1', 'oauth_timestamp' => time(), 'oauth_nonce' => md5(uniqid(mt_rand(), TRUE)), 'oauth_version'=> '1.0', ); //変数名でソート $request_sorted = $request_param; ksort($request_sorted); //1行のクエリに加工 $request_queries = array(); foreach ($request_sorted as $k => $v) $request_queries[] = "{$k}={$v}"; $request_query = implode('&', $request_queries); //それぞれをURLエンコードして接続 $twtr_signature_base = "GET&"; $twtr_signature_base .= rawurlencode('http://'. TWTR_REQUEST_DOMAIN. TWTR_REQUEST_PATH). "&"; $twtr_signature_base .= rawurlencode($request_query); //Signatureの作成とクエリーの作成 $request_param['oauth_signature'] = base64_encode(hash_hmac('sha1', $twtr_signature_base, rawurlencode(TWTR_CONSUMER_SECRET).'&', true));$request_queries = array(); foreach ($request_param as $k => $v) $request_queries[] = $k. '='. rawurlencode($v); $request_query = implode('&', $request_queries); //リクエストURLの作成 $twtr_signed_url = 'http://'. TWTR_REQUEST_DOMAIN. TWTR_REQUEST_PATH. '?'. $request_query; //リクエストトークンの取得 echo file_get_contents($twtr_signed_url);
Twitter API プログラミング
posted with amazlet at 11.03.07
辻村 浩
ワークスコーポレーション
売り上げランキング: 131008
ワークスコーポレーション
売り上げランキング: 131008