Я с нетерпением жду показа продуктов Amazon.но я получаю signature error
.Я применил разные фрагменты, но все еще без прогресса .. :( любая помощь будет оценена.
Рассчитанная нами подпись запроса не соответствует предоставленной вами подписи. Проверьте свой секретный ключ доступа AWS и метод подписиПодробнее см. В сервисной документации.
$AWS_ACCESS_KEY_ID = "MY_ACCESS_KEY";
$AWS_SECRET_ACCESS_KEY = urlencode("MY_SECRET_KEY");
$base_url = "http://webservices.amazon.com/onca/xml?";
$url_params = array('Operation'=>"ItemSearch" , 'Service' => "AWSECommerceService",
'AWSAccessKeyId' => $AWS_ACCESS_KEY_ID , 'AssociateTag' => "mytag-20",
'Version' => "2013-08-01",'Availability'=>"Available",'Condition'=>"All",
'ItemPage'=>"1",'ResponseGroup'=>"Images,ItemAttributes,EditorialReview",
'Keywords'=>"Amazon");
// Add the Timestamp
$url_params['Timestamp'] = gmdate("Y-m-d\TH:i:s.\\0\\0\\0\\Z", time());
// Sort the URL parameters
$url_parts = array();
foreach(array_keys($url_params) as $key){
$url_parts[] = $key."=".$url_params[$key];
}
sort($url_parts);
$string_to_sign = "GET\nwebservices.amazon.com\n/onca/xml\n".implode("&",$url_parts);
$string_to_sign = urlencode($string_to_sign);
$signature = hash_hmac("sha256",$string_to_sign,$AWS_SECRET_ACCESS_KEY,TRUE);
$signature = base64_encode($signature);
$signature = urlencode($signature);
$url_string = implode("&",$url_parts);
$url = $base_url.$url_string."&Signature=".$signature;
print $url;