签名不匹配:: IXCBA 内联结账 通过亚马逊马格嫩托扩展
Signature does not match:: IXCBA Inline Checkout By Amazon Magnento Extension
我正在使用IXCBA的Inline Checkout by Amazon插件用于Magento商店。我有一个使用 SSL 的安全加密连接到亚马逊。每次我尝试购买时,我都会收到相同的错误:
<pre>Simple XMLElement Object
(
Error => SimpleXMLElement Object
Type = > Sender
Code = > SignatureDoesNotMatch
Message = > The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.
)
RequestID => id-name
)
<pre/>
我检查了AWS私有密钥和其他数据,并无数次替换它们,但没有运气。我还向扩展作者寻求帮助,并在亚马逊的卖家中心发布了一个问题,但还没有给出如何解决问题的线索。
亚马逊推荐一些脚本,包括JavaScript,以检查签名的问题。
我正在考虑使用这个JavaScript:
function getSignatureKey(key, dateStamp, regionName, serviceName) {
var kDate= Crypto.HMAC(Crypto.SHA256, dateStamp, "AWS4" + key, { asBytes: true})
var kRegion= Crypto.HMAC(Crypto.SHA256, regionName, kDate, { asBytes: true });
var kService=Crypto.HMAC(Crypto.SHA256, serviceName, kRegion, { asBytes: true });
var kSigning= Crypto.HMAC(Crypto.SHA256, "aws4_request", kService, { asBytes: true });
return kSigning;
}
因为我至少对使用 jQuery 等库的 JavaScript 有一些基本知识。
但是我现在想知道我需要替换哪些数据才能进行测试。我也想知道我是否可以使用 Firebug JScript 控制台来运行测试,或者我是否需要以不同的方式进行操作。后者我可以通过测试弄清楚,但对于前者,我可以使用一些帮助。
更新
我在 FF Scratchpad 中运行脚本并看到密钥丢失,因此我添加了 AWS 访问密钥 ID 并再次运行它,但没有任何反应。我没有错误也没有输出。
更新二
当我替换访问密钥密钥和商家 ID 时,我遇到了另一个错误:
重要讯息
We're sorry, but there's a problem processing the order from this website. Please contact the seller for help on placing this order.
也许卖家中心的配置不正常?链接 https://payments-sandbox.amazon.com/gp/cba/v2/widgets...也许是错误的版本?
数据库中的更改似乎确实有所帮助,因此IXCBA可能无法正确存储我在后端输入的数据。
更新三
毕竟后端的代码还可以。更改后,代码全部损坏,因此我不得不再次从Magento后端执行此操作。但后来我得到了同样的XML错误。亚马逊提到了这一点:
现在看起来真的很奇怪。要完成订单,有几个您的网站必须进行的 API 调用。2个基本的是setPurchaseItems 将订单数据放入订单中,以及完成购买合同以处理订单。在您的情况下,签名错误由完整的购买合同返回,但设置购买项目工作正常。
在这种情况下,只要您确定商家 ID、访问密钥并且密钥字段中没有前导/尾随空格Magento后端,您将不得不获得Magiex的支持插件提供商来看看。因此,我们无法访问代码不能真正帮助你修复它。
于是我又联系了MageIx。等待回应,同时我试图弄清楚事情。
最后有三个问题。第一,安装不知何故没有正确完成。我必须重做它。第二,未正确添加 AWS 商户 ID、密钥和私有密钥。我调整了。第三,存在服务器标记问题,导致购物车的自签名和问题。MageIx开发人员做了一个自定义扩展来规避时间戳问题。输入钥匙和重新安装的其他问题并不难解决。CBA现在有效
铌现在唯一的问题是亚马逊的内联结账似乎不适用于FBA。但在亚马逊,一半的开发人员说它有,其他人说它没有。但这是另一个线程的问题。
- 亚马逊s3 Javascript-否'访问控制允许来源'标头存在于请求的资源上
- 如何使用jwplayer让亚马逊托管的rtmp流在iOS上工作
- 为什么可以'我在亚马逊(控制台)中使用jQuery
- 在 AWS 中显示 DynamoDB 中的整个表(亚马逊网络服务)
- 使用 jquery :lt 自定义简单的亚马逊型星级评定
- 带有流星的亚马逊产品API
- 我如何控制这个亚马逊附属公司JavaScript片段的宽度
- 错误:操作不安全.图片未在亚马逊服务器网址的画布 base64 中转换
- 寻找将亚马逊数据插入PHP形式的方法
- 签名不匹配:: IXCBA 内联结账 通过亚马逊马格嫩托扩展
- 1 个同时下载 + 强制等待时间 + 亚马逊 S3
- 如何拍摄亚马逊S3上托管的视频截图
- Phantomjs/Casperjs没有正确评估德国亚马逊网站上的JS/Ajax
- 亚马逊cloudfront为不同的用户提供不同的资产
- 将Netatmo气象站链接到亚马逊回声(Alexa)
- Javascript React单页应用程序+亚马逊S3:永久链接问题
- 从flipcart、亚马逊等其他网站选择产品价格
- 如何制作类似亚马逊网站上的下拉菜单
- URL更改脚本的亚马逊不工作
- Facebook应用,亚马逊应用