我正在创建一个动态按钮并根据我在 Amazon 上找到的文档和示例代码(使用 C#)生成一个签名。一切正常,付款通过等等,但是当我尝试通过更改表单中的价格来打破常规时,它仍然可以通过。似乎签名完全被忽略了。
我的第一个问题是,亚马逊是否有任何理由忽略签名?
并不是说我认为它会有很大帮助,但这是生成的 html。
<input type="image" src="https://authorize.payments-sandbox.amazon.com/pba/images/SMSubscribeWithOutLogo.png" border="0">
<input type="hidden" name="immediateReturn" value="0" >
<input type="hidden" name="signature" value="myGeneratedSig" >
<input type="hidden" name="cobrandingStyle" value="logo" >
<input type="hidden" name="accessKey" value="MyAccessKey" >
<input type="hidden" name="subscriptionPeriod" value="" >
<input type="hidden" name="description" value="My Test Subscription" >
<input type="hidden" name="signatureMethod" value="HmacSHA256" >
<input type="hidden" name="referenceId" value="MyReferenceID" >
<input type="hidden" name="returnUrl" value="mydomain.com/mytesturl.html" >
<input type="hidden" name="ipnUrl" value="mydomain.com/ipn.html" >
<input type="hidden" name="signatureVersion" value="2" >
<input type="hidden" name="collectShippingAddress" value="0" >
<input type="hidden" name="amount" value="USD 299.00" >
<input type="hidden" name="amazonPaymentsAccountId" value="MyPaymentsID" >
<input type="hidden" name="processImmediate" value="1" >
<input type="hidden" name="recurringFrequency" value="1 year" >
<input type="hidden" name="abandonUrl" value="mydomain.com/abandonurl.html" >