会社行きたくなかったんです。

自由になりたくて会社辞めました

Amazon MWS API

MWSで「the value of a query string parameter may not contain a '=' delimiter」エラー

投稿日:

アマゾンのMWS APIで「the value of a query string parameter may not contain a '=' delimiter」というエラーが発生することがあります。

Invalid query string provided - ・・・・・ is not valid; the value of a query string parameter may not contain a '=' delimiter

 

スポンサーリンク

この場合、Base64をエンコーディングして作成したSignatureの最後に「=」がついていることに気づきます。
まずは、そこで「=」を「%3D」とURLエンコーディングして試してみます。
すると、「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.」

こうなってしまった場合、考えられるのは、TimestampなどがURLエンコーディングされていない状態でSignatureを生成したということです。

Signatureを計算する前に、すべてのパラメータをURLエンコーディングしておく必要があります。
例えば、Timestampは以下のようになります。

Timestamp=2018-11-06T05:43:44Z
↓↓↓
Timestamp=2018-11-06T05%3A43%3A44Z

-Amazon MWS API

Copyright© 自由になりたくて会社辞めました , 2018 AllRights Reserved Powered by AFFINGER4.