Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

-件のコメント

コメントの投稿

新規
投稿した内容は管理者にだけ閲覧出来ます

-件のトラックバック

トラックバックURL
http://jacketj.blog45.fc2.com/tb.php/1468-24abfef1
この記事に対してトラックバックを送信する(FC2ブログユーザー)

AWSからProduct Advertising API へのサービス名変更。認証キーが必要に。

Amazon アソシエイト Web サービスの名称変更および署名認証についてのお知らせ


Amazon Web Services Developer Community : Amazon アソシエイト Web サービスの名称変更および署名認証についてのお知らせ

久々にAPIの仕様変更?仕様追加と期待していたら、認証を行うからキーをリクエストに含めろと。

この変更は、2009年5月8日より3ヶ月の間の移行期間の後、2009年8月16日には、Product Advertising API へ送信されるリクエストは全て認証されることとなり、認証されない場合、リクエストは処理されなくなります。

2009年8月16日になると、今までのリクエストは全てNGになるようです。3ヶ月で開発しましょう。
厳しい仕様変更ですが、API更新が半年ほどなかったので良い刺激になりますね。

単純RESTは使えなくなるのかな?
簡易リクエストだけで出来ていたリクエストに、APIを組み込まないといけない様です。
試しに画像を取得してみましょう。


まず、認証キーの発行から。
Product Advertising API

ここから、アカウント設定
Product Advertising API に認証されたリクエストを送信するには、アクセスキー情報が必要となります。アクセスキーには2つの種類があり、1つは AWS アクセスキー情報(公開および秘密キー)となり、もう1つは x.509 証明書となります。

AWS アクセスキー情報 (公開および秘密キー)
新しい秘密キーの生成
X.509 証明書の生成またはアップロード


X.509 証明書?聞いたことがありませんので、Google先生に聞いてみる。


簡単に調べると、単なる公開鍵のフォーマット。
秘密キーが必要になるということは、サーバ側で秘密キーを保持しないといけないのでしょう。
やはりHTTPだけの単純リクエストは不可能でしょうかね。。


いつものアカウントでログインして、、、、

You Do Not Have an Amazon Web Services Account

To access the page you selected, you must have an Amazon Web Services (AWS) account.
Create an AWS account now!

あれ???AWSアカウント無い???
早速行き詰まりました。

USアカウントと同じIDでJPも登録してあるので、どちらで処理しているのかすら分かりません。
でもJPもUSもアカウントあるしなぁ。


分からないので、公式の情報を仕入れ。


Amazon Web Services Developer Community : Product Advertising API Signed Requests Sample Code - Java REST/QUERY

サンプルコードを眺めてみます。

・・・

エンコードと秘密キーとTimestampで、なんとかしろよ、くらいしか分かりませんでした。
サンプル動作にはorg.apache.commons.codec.binary.Base64も必要。

Java version 1.5 or later
Apache Ant version 1.7 or later
The following java libraries:
Apache Commons Codec 1.3 http://commons.apache.org/codec/ (included with this sample)


動いているソースがあるので、参考にすれば簡単に動きそうだなぁ。


アカウントなんとかならないかな?秘密キーが無いとなにもできやしない。



Product Advertising API

ライセンス契約を読んでおくか。。


・サブドメインにamazon以外にも、amazonで提供しているサービス名を含まないように
・固有の公開/秘密キー⇒「アカウント識別子」
・固有のユーザー名/パスワードの組み合わせ⇒「データフィードアクセスID」
・秘密キーまたはパスワードは教えるなよ
・アマゾンサイトに表示されなくなった、または、当方がお客様による利用が不可能となった旨を通知した商品関連コンテンツを速やかにお客さまのアプリケーションから削除または破棄するものとします。
・商品関連コンテンツまたは仕様書類に表示または含まれる、知的財産権または財産権の表示を含むいかなる表示を、除去、隠蔽、変更、または見えなくしたり、読めなくしたり、判読不可能にすることはだめよ。
・画像で構成される商品関連コンテンツを格納またはキャッシュしてはいけませんが、画像で構成される商品関連コンテンツへのリンクを、24時間まで格納することができます。
・お客様は、画像で構成されていないコンテンツを、データキャッシュの目的で、24時間まで格納することができますが、それをした場合は、その後直ちに Product Advertising API にリクエスト送信を行うか、または新しいデータフィードを取り込み、お客様のアプリケーション上の商品関連コンテンツを刷新することにより、商品関連コンテンツを直ちに刷新し、再表示しなければなりません
・当方の要求があれば、お客様は、当方の要求から3営業日以内に、お客様が本ライセンス契約を遵守しているかを確認できるよう、かかるクライアントアプリケーションのコピーを当方に提供するものとします。
・アプリケーション上の商品関連コンテンツを刷新する頻度が1時間に1回以下の場合は、お客様のアプリケーション上の価格情報または発送可能時期についての情報に隣接して時刻/日付のスタンプを含むものとします
・お客様自身も、また、お客様が Product Advertising API にリクエスト送信を行うアプリケーションを作成し公表した場合は、エンドユーザーによりインストールされたかかるアプリケーションの各コピーは、毎秒1コールを超えないものとし、また、当方の事前の書面による同意なしに、Product Advertising API 宛にまたはこれより、サイズが40Kを超えるファイルを送信しないものとします。

簡単にまとめると、キャッシュはするなよと。怪しかったらアプリ公開・・・。
価格はしっかり書いて、発送可能状態も忘れずに、タイムスタンプも忘れずにと。

いままでとあまり変更はありませんでした。



元のAWSアカウントどうやって登録したんだっけ・・・?英語サイトから登録したような?

AWSAccessKeyIdが同じで、AssociateTagが違うだけだから、US版とか無いんだったなぁ。。。
思い出してきたけど、まだ秘密キー生成に至らず。サイト情報登録しろよ画面が出るのですが、
新たに登録してもいままでのAWSAccessKeyId使えるかどうかがわからず、情報待ち。
スポンサーサイト

0件のコメント

コメントの投稿

新規
投稿した内容は管理者にだけ閲覧出来ます

0件のトラックバック

トラックバックURL
http://jacketj.blog45.fc2.com/tb.php/1468-24abfef1
この記事に対してトラックバックを送信する(FC2ブログユーザー)

Appendix

ジャケット画像を探す!

最近の記事

Amazon検索

プロフィール

Author:jacketer
中の人は完全な佳奈様病です

ブログ内検索

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。