Im Moment habe ich ein wenig mit der Erzeugung von HMAC für Amazon MWS kämpfen.Amazon MWS - Ich verstehe nicht, wie man HMAC generiert
Ich dachte, ich verstehe, wie es funktioniert.
Mit dem Scratchpad habe ich eine Anfrage generiert. Scratchpad zeigt die Zeichenkette und auch die SHA 256 HMAC und die Base64 HMAC. Die Zeichenkette besteht aus 4 Zeilen wie in der Doku beschrieben.
Es gibt mehrere Online-Konverter für HMAC. Ich habe versucht:
https://www.freeformatter.com/hmac-generator.html
https://codebeautify.org/hmac-generator
Wenn ich die Zeichenfolge konvertieren zu unterzeichnen, die Scratchpad erzeugt (die 4 Zeilen), erhalte ich eine andere SHA 256 HMAC dann Scratchpad erzeugt.
Auch gibt es mehrere Onlineconverter für Base64. Ich habe versucht:
https://www.freeformatter.com/base64-encoder.html
Wenn ich der SHA 256 HMAC wandeln, das Scratchpad erzeugt, erhalte ich ein anderes Base64-String dann Scrathpad erzeugt.
Das verwirrt mich. Was ich nicht verstehe?
Andere Punkt:
Später denke ich, das ich verwenden möchte POST GET und nicht. Habe ich richtig verstanden, dass die Zeichenkette für GET auch in 4 Zeilen stehen muss und nicht in einer Zeile, wie sie später ausgeführt würde? So verstehe ich die Doku.
benutzte ich diese Links: http://docs.developer.amazonservices.com/en_US/dev_guide/DG_QueryString.html http://docs.developer.amazonservices.com/en_US/dev_guide/DG_SigningQueryRequest.html https://mws.amazonservices.com/scratchpad/index.html
Hier sind ein paar RFC 2104 konforme HMAC-Signatur-Implementierungen (im Kontext von MWS), die Ihnen helfen könnten. https://github.com/integration-technology/amazon-mws-orders/blob/042e8cd5b10588a30150222bf9c91faf4f130b3c/src/main/java/com/amazonservices/mws/client/MwsUtl.java#L246-L270 https://github.com/czpython/python-amazon-mws/blob/master/mws/mws.py#L225-L229 https://github.com/eibbors/mws-js/blob/master/lib/mws. js # L114-L151 https://github.com/CPIGroup/phpAmazonMWS/blob/ddede7112bba41b9e6d837ec02b2d1309cd2f720/includes/classes/AmazonCore.php#L897-L922 –
Warum versuchen Sie, den HMAC zu generieren? Um Scratchpad zu verwenden, benötigen Sie lediglich Ihre Verkäufer-ID, den Zugriffsschlüssel und den geheimen Schlüssel (und alle Anfragedaten abhängig vom API-Endpunkt). Scratchpad berechnete den HMAC für Sie, nachdem Sie den Senden-Knopf gedrückt haben. Fehle ich etwas? –
Ich muss ein Programm schreiben, das MWS verwendet und kann Java oder irgendeine Sprache nicht verwenden, für die Sie Beispiele finden können. Also zuerst wollte ich verstehen, wie es funktioniert. – nuely