あと5日だぞゴルァ!!
ってAmazonからメール来てたので対応してみました。
ぎりぎりにならないとやらない。。
夏休みの宿題といっしょです。
というわけで今まで渡してたparamとシークレットキーを渡すと
アクセスURLを返してくれる関数。
完全に自分用。
引数や返り値はその都度変えるといいよね。
ちなみにparamにはこんな感じのデータを。
検索にあわせて変更。
ってAmazonからメール来てたので対応してみました。
ぎりぎりにならないとやらない。。
夏休みの宿題といっしょです。
というわけで今まで渡してたparamとシークレットキーを渡すと
アクセスURLを返してくれる関数。
完全に自分用。
引数や返り値はその都度変えるといいよね。
function amazonSignature ($param=array(), $secretKey="") { $aws = array("host" => "webservices.amazon.co.jp", "path" => "/onca/xml"); ksort($param); $reqParam = array(); foreach ($param as $key => $val) { $reqParam[] = $key . "=" . rawurlencode($val); } $paramStr = implode("&", $reqParam); $str = implode("\n", array('GET', $aws["host"], $aws["path"], $paramStr)); $sig = rawurlencode( base64_encode( hash_hmac("sha256", $str, $secretKey, true))); $reqParam[] = "Signature=" . $sig; $url = "http://" . $aws["host"]. $aws["path"] . "?" . implode("&", $reqParam); return $url; }
ちなみにparamにはこんな感じのデータを。
検索にあわせて変更。
$param = array( "Service" => "AWSECommerceService", "AWSAccessKeyId" => "YOUR ACCESS KEY", "Operation" => "ItemSearch", "SearchIndex" => "Books", "ResponseGroup" => "Medium,Tracks", "BrowseNode" => "465610", "Timestamp" => gmdate("Y-m-d\TH:i:s\Z"), );