亚马逊产品API:获得最畅销/最畅销的产品

时间:2016-03-12 18:21:12

标签: amazon amazon-product-api

我正在尝试查找API,它可以在某个部分(书籍等)中提供顶级产品或畅销产品等项目。我试图寻找浏览器节点部分,但找不到这样的帮助。

1 个答案:

答案 0 :(得分:1)

我希望这个PHP示例可以帮助您:

 // Your AWS Access Key ID, as taken from the AWS Your Account page
$aws_access_key_id = $key_id;

// Your AWS Secret Key corresponding to the above ID, as taken from the AWS Your Account page
$aws_secret_key = $secret_key;

// The region you are interested in
$endpoint = "webservices.amazon.co.uk";

$uri = "/onca/xml";

$params = array(
    "Service" => "AWSECommerceService",
    "Operation" => "BrowseNodeLookup",
    "AWSAccessKeyId" => "$aws_access_key_id",
    "AssociateTag" => "$tag",
    "BrowseNodeId" => "$nodeid_uk",
    "ResponseGroup" => "TopSellers"
);

// Set current timestamp if not set
if (!isset($params["Timestamp"])) {
    $params["Timestamp"] = gmdate('Y-m-d\TH:i:s\Z');
}

// Sort the parameters by key
ksort($params);

$pairs = array();

foreach ($params as $key => $value) {
    array_push($pairs, rawurlencode($key)."=".rawurlencode($value));
}

// Generate the canonical query
$canonical_query_string = join("&", $pairs);

// Generate the string to be signed
$string_to_sign = "GET\n".$endpoint."\n".$uri."\n".$canonical_query_string;

// Generate the signature required by the Product Advertising API
$signature = base64_encode(hash_hmac("sha256", $string_to_sign, $aws_secret_key, true));

// Generate the signed URL
$request_url = 'http://'.$endpoint.$uri.'?'.$canonical_query_string.'&Signature='.rawurlencode($signature);

echo "Signed URL: \"".$request_url."\"";