AmazonのProduct Advertising APIの制限
Amazonの商品検索機能の実装を考えていたところですが、大きな障害に直面。どうもAmazonの商品検索はJavaScript(クライアント)のみで実装するのは難しいようです。いろいろ調べていると、
Amazonは一昨年APIを一新して
Product Advertising APIという名称に変え、JavaScript単独では原則的に商品検索機能を実装できないようにした模様。2009年8月31日がサービス変更日なのですでに相当たった後でした。うーむ、以前はJavaScriptのみでも可能だったようですが……。今になって知ってしまった。
RSSフィードを利用する手段もありますが、これだと
GoogleNewsSearchで使ったキーワード検索ができないので、ユーザーがキーワードに即した商品を探すのは難しい。それならば、素直に用意されているアフィリエイトのリンクなりウィジェットを使った方がいいという話に。
ちなみにウェブ上を探してみると、JavaScriptのみで商品検索機能を紹介しているページがあります。
JavaScript + Ajax 実践サンプル集
実のところJavaScriptだけで実装はできるのですが、そのためには
Product Advertising APIのアカウントを作成した上で、そこで発行されるAPIキーと秘密キーを使わなければなりません。この秘密キーは文字通り自分以外に公開してはいけないというキーなので、ユーザーにソースを読まれる可能性があるクライアント側で実装するのは事実上不可能になるわけです。このページのあるJSファイルをのぞくと案の定、秘密キーが記述されている箇所があります。ただし、このページはデモページであり、人気ブログやサイトのように不特定多数のユーザーが訪れることはないので敢えて公開しているのかもしれません。
とはいえ、これを真似て検索機能を作ると、導入した人の自己責任になってしまう。何か抜け道はないだろうか……。
追記:
ClickableCanvasのバージョンを変更しました。大きな変更はないですが、
uuCanvas.jsを読みこんでいると、プラグイン呼び出し後、直に書かれたコードがエラーを起こすという不具合に対処しました。
jQuery ClickableCanvas デモページ10
ClickableCanvasドキュメントページ -
JavaScript/Ajax Amazon, Product Advertising API