标签: amazon-marketplace

计算亚马逊商城API签名的问题

我正在尝试计算签名以进行亚马逊商城API调用,但我不断收到以下错误:

我们计算的请求签名与您提供的签名不匹配.检查您的AWS Secret Access Key和签名方法.有关详细信息,请参阅服务文档

我已将签名创建过程包装到一个类中:

<?php
namespace App\Marketplace\Amazon;

class Signature
{
    protected $signedString;

    public function __construct($url, array $parameters, $secretAccessKey)
    {
        $stringToSign = $this->calculateStringToSign($url, $parameters);

        $this->signedString = $this->sign($stringToSign, $secretAccessKey);
    }

    protected function calculateStringToSign($url, array $parameters)
    {
        $url = parse_url($url);

        $string = "POST\n";
        $string .= $url['host'] . "\n";
        $string .= $url['path'] . "\n";
        $string .= $this->getParametersAsString($parameters);

        return $string;
    }

    protected function sign($data, $secretAccessKey)
    {
        return base64_encode(hash_hmac('sha256', $data, $secretAccessKey, true));
    }

    protected function getParametersAsString(array $parameters)
    {
        uksort($parameters, 'strcmp');

        $queryParameters = [];

        foreach …
Run Code Online (Sandbox Code Playgroud)

php amazon-mws amazon-marketplace

20
推荐指数
1
解决办法
1641
查看次数

如何使用第三方应用程序登录亚马逊MWS

我正在使用Web应用程序工作,该应用程序将使用Amazon MWS api管理库存,订单,发货。

卖家可以在应用程序注册并可以连接到亚马逊MWS API,我能够与提供给做的Marketplace_IdSeller_IdAccess_Key_IDSecret_Access_Key密钥,但我不想做这样进入所有的按键公众。

我正在使用现成的laravel软件包来访问所有MWS API。访问卖家账户它需要Marketplace_IdSeller_IdAccess_Key_IDSecret_Access_Key

我已经检查了一些平台,例如AMZPing,库存实验室。他们提供了一种类似于连接到亚马逊MWS的方式,使用该链接,卖方可以连接到亚马逊MWS。

这里是连接亚马逊MWS的链接。

AMZPing:

https://sellercentral.amazon.com/gp/mws/registration/register.html?
id=5ccea641-5bec-1234-1234-c123490628df&
returnPathAndParameters=/Account/HandleReturnURLForMWS?userId=12124&email=test%40gmail.com&
SignatureVersion=2&
SignatureMethod=HmacSHA256&
AWSAccessKeyId=ABSEDGDUSKXHEYWTDGSANDBDBD&
Signature=h1MXM5FiioxWY6ATwCgPtdbI1ADSWDETDDN6B/SWQAFR=
Run Code Online (Sandbox Code Playgroud)

库存实验室:

https://sellercentral.amazon.com/gp/mws/registration/register.html?
SignatureMethod=HmacSHA256&
SignatureVersion=2&
AWSAccessKeyId=AKIAJWMONWSHDEUJ2OVA&
id=9583ded2-ad36-1234-1234-122096397fd6&
returnPathAndParameters=/webhook?id=1984&region=NA&env=production&
Signature=txLrXJ%2BUvYlmeq8gFu4atByFTBq89UKb2MorK1uaeyg=
Run Code Online (Sandbox Code Playgroud)

我如何像上面的链接那样连接?有人可以解决吗?

amazon amazon-web-services amazon-mws amazon-marketplace

5
推荐指数
1
解决办法
1595
查看次数