2012-09-05 39 views
0

我正在創建一個動態按鈕,並根據我在Amazon上找到的文檔和示例代碼生成簽名(使用C#)。一切正常,支付通過等等,但是當我試圖通過改變表格中的價格來破壞事情時,它仍然會通過。這似乎是簽名被完全忽略。Amazon Payments動態按鈕簽名被忽略?

我的第一個問題是,Amazon有沒有理由忽略簽名?

不是我認爲它會有所幫助,但這裏是生成的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" > 

回答

0

我想通了。事實證明,我沒有在「管理開發人員和賣家首選項」下簽名的「簽名按鈕」。

+0

還有一點需要注意的是,請記住沙箱有不同的首選項頁面。 例如https://payments-sandbox.amazon.com/sdui/sdui/managecobranding 由於這種疏忽,我在測試過程中被卡住了一段時間。 – Justin