我已经为亚马逊支付实现了 PHP SDK,目前我面临一个错误,当我点击亚马逊支付按钮时,将打开一个弹出窗口询问亚马逊的登录凭据,成功登录后它将重定向到地址簿和付款方式选择页面,在该页面上我遇到了这个错误,我得到的 Json 响应如下。
AmazonPay\ResponseParser Object
(
[response] => Array
(
[Status] => 401
[ResponseBody] =>
Sender
AccessDenied
Access denied
11e659e5-6413-4f49-ab38-339472490e5c
)
)
{
"Error": {
"Type": "Sender",
"Code": "AccessDenied",
"Message": "Access denied"
},
"RequestID": "11e659e5-6413-4f49-ab38-339472490e5c",
"ResponseStatus": "401"
}
因此,如果您知道此错误,请向我提出建议。 提前致谢!
最佳答案
请在 amazon pay 配置文件上设置适当的国家明智的配置设置。即,如果您的国家/地区选择基于英国,那么亚马逊支付沙盒仅适用于英镑和英国,如果您尝试使用其他地区或货币,那么您将收到此访问被拒绝的错误。
同时交叉检查您在文件中设置的 Amazon Sandbox 凭据,并确保所有设置都是正确的。
<?php
namespace AmazonPay;
$config = array(
'merchant_id' => 'YOUR_MERCHANT_ID',
'access_key' => 'YOUR_ACCESS_KEY',
'secret_key' => 'YOUR_SECRET_KEY',
'client_id' => 'YOUR_LOGIN_WITH_AMAZON_CLIENT_ID',
'region' => 'REGION',
'sandbox' => true);
$client = new Client($config);
// Also you can set the sandbox variable in the config() array of the Client class by
$client->setSandbox(true);
点击here查看在您的网站上实现亚马逊支付网关的完整文档。
关于php - 成功登录亚马逊账户授权后,亚马逊支付出现 "AccessDenied"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59085904/