2012-09-12 2 views
5

Sto lavorando per integrare Amazon FPS nel sito Web della mia azienda, ma sembra che stia avendo problemi a generare una firma appropriata. Ecco ciò che la documentazione di Amazon dice di fare: http://docs.amazonwebservices.com/AmazonFPS/latest/FPSAdvancedGuide/APPNDX_GeneratingaSignature.htmlGenerazione di una firma per Amazon fps

Qui è la mia stringa che ho Hash:

GET\nfps.sandbox.amazonaws.com\n/\nAction=Reserve&AWSAccessKeyId=REMOVED&CallerDescription=Reserve&CallerReference=CallerReference05&RecipientTokenId=254656Example83987&SenderTokenId=553IPMACGAZ2J4N1L7BJ3UMNRFTQU4V9NT4RJCTVADDJKXQ6L1ZAKSIUNPIRTTI1&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2012-09-12T22%3A29%3A07.623Z&TransactionAmount.CurrencyCode=USD&TransactionAmount.Value=1.00&Version=2010-08-28 

e qui è la richiesta HTTP mando:

https://fps.sandbox.amazonaws.com?Action=Reserve&AWSAccessKeyId=REMOVED&CallerDescription=Reserve&CallerReference=CallerReference05&RecipientTokenId=254656Example83987&SenderTokenId=553IPMACGAZ2J4N1L7BJ3UMNRFTQU4V9NT4RJCTVADDJKXQ6L1ZAKSIUNPIRTTI1&Signature=t5r%2BWmV9PdoOGfHhtwLJ5nJ8zo%2BIJL4uWB6MOMpkZLw%3D&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2012-09-12T22%3A29%3A07.623Z&TransactionAmount.CurrencyCode=USD&TransactionAmount.Value=1.00&Version=2010-08-28 

Anche qui è la errore esatto Ricevo indietro:

SignatureDoesNotMatch 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 - ac476abb-2bc6-4891-8854-e52cf33f8716 

Sto scrivendo g questo in coffeescript con un backend node.js. Qualcuno può trovare quello che sto facendo male? Posso pubblicare il mio codice se necessario.

risposta

3

Ho capito cosa stavo facendo male. I miei campi di query non erano in ordine di byte naturale. AWSAccessKey viene prima di Action. L'esempio di Amazon ha mostrato loro come stavo cercando di farlo e non nel modo corretto.

3

Ho scritto una piccola lib per aiutare con le richieste di firma. forse potrebbe esserti utile https://github.com/theRemix/aws_signature_utils_js

+0

Ciao theRemix, ti preghiamo di prendere in considerazione l'aggiunta di un campione di utilizzo, i link solo post non sono realmente risposte e non aggiungono valore al sito. – edi9999