前提・実現したいこと
セブンネットAPIを使って商品検索したい。
ウェブブラウザでGETリクエストしたところ、エラーメッセージが発生しました。
発生している問題・エラーメッセージ
セブンネットのレスポンスはこれです。
↓↓↓
<aff:ApiError xmlns:aff="https://7af-api.omni7.jp/affiliate">
aff:ApiErrorStatusNotAuthenticated</aff:ApiErrorStatus>
aff:ApiErrorMessageリクエストパラメータに誤りがあります。(Signature)</aff:ApiErrorMessage>
</aff:ApiError>
プログラムで実装しても同じ結果でした。
文字コードエンコはすべてUTF8です。
該当のソースコード
作成URLを https://7af-api.omni7.jp/af_api/affiliate/rest/SearchProduct?ApiUserId=id&KeywordIn=ペットフード&Timestamp=2018-08-07T00:30:00Z ここの言う通り下処理して https://7af.omni7.jp/af_static_site/static_063.html こうなりました。 ↓↓↓ GET|https://7af-api.omni7.jp/af_api/affiliate/rest/SearchProduct|ApiUserId=id|KeywordIn=ペットフード|Timestamp=2018-08-07T00:30:00Z ここでURLエンコして http://urlencode.net/result.cgi こうなりました。 ↓↓↓ GET%7Chttps%3A%2F%2F7af-api.omni7.jp%2Faf_api%2Faffiliate%2Frest%2FSearchProduct%7CApiUserId%3Did%7CKeywordIn%3D%E3%83%9A%E3%83%83%E3%83%88%E3%83%95%E3%83%BC%E3%83%89%7CTimestamp%3D2018-08-07T00%3A30%3A00Z ここで隠し鍵を「key」としてハッシュ作って https://www.freeformatter.com/hmac-generator.html#ad-output こうなりました。 ↓↓↓ b055096f032334530553c873e815b74cef94c70fb9c177b0762309a1484aef1e ここでBase64エンコして https://uic.jp/base64encode/ こうなりました。 ↓↓↓ YjA1NTA5NmYwMzIzMzQ1MzA1NTNjODczZTgxNWI3NGNlZjk0YzcwZmI5YzE3N2IwNzYyMzA5YTE0ODRhZWYxZQ== 完成した署名をURLに付加して ブラウザでリクエストしました。 https://7af-api.omni7.jp/af_api/affiliate/rest/SearchProduct?ApiUserId=id&KeywordIn=ペットフード&Timestamp=2018-08-07T00:30:00Z&Signature=YjA1NTA5NmYwMzIzMzQ1MzA1NTNjODczZTgxNWI3NGNlZjk0YzcwZmI5YzE3N2IwNzYyMzA5YTE0ODRhZWYxZQ
試したこと
UTF8に文字をエンコする。
C#プログラムで実装してみる。
結果、変わらずでした。
少し前のAPIの実装例がここにありました。
↓↓↓
http://fujitaiju.com/web-tool/699470/
間違っている箇所がどうしてもわかりません。
「こんな可能性あるよ」というご指摘だけでも、頂ければ助かります。
よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/09 06:32