Product Advertising API用リバースプロキシ
なにこれ?
Amazon Web ServicesのProduct Advertising API用の認証処理を代行するプロキシ(amazon-auth-proxy仕様準拠)の負荷分散を行うリバース・プロキシです。
上記のエンドポイント宛にProduct Advertising API(旧:Amazon アソシエイト Web サービス)のRESTエンドポイント用クエリを付けて送信すると、登録されているプロキシの中からラウンドロビンに選択して要求を中継し、応答を返します。
■リクエスト例
http://honnomemo.appspot.com/rpaproxy/jp/?Service=AWSECommerceService&AssociateTag=sample-22&SubscriptionId=12345678901234567890&Version=2007-10-29&Operation=ItemSearch&ResponseGroup=Small&SearchIndex=Books&Keywords=Amazon&ItemPage=1
これにより、従来のクラインアントアプリケーションもエンドポイントを書換えてやるだけで、署名認証処理を意識することなく動作可能となります。
注意事項
利用者の方へ
過度に頻繁なアクセスが確認された場合など、運用者の判断で予告無く利用を制限するなどの措置をとる可能性があります。
また、運用者の都合により、予告無くサービスを停止することもありますので、ご了承願います(全体でGoogle App EngineのFree Default Quotaを越えた場合、他)。
AmazonのAccess Key IDをお持ちの方は、自前でプロキシを設置の上、本リバース・プロキシへの登録をお願いします。
Google App Engineならば無料でプロキシを設置可能です(こちらを参照)。
プロキシ提供者の方へ
負荷の関係上、Amazon APIコール結果ではなく、認証Signature付きURLを302 Foundで返すようにお願いします。
リバース・プロキシからのHTTPリクエストヘッダのUser-Agentには、"rpaproxy/x.xx"(x.xxはバージョン)が含まれますので(例:rpaproxy/0.01 AppEngine-Google; (+http://code.google.com/appengine),gzip(gfe))判別が必要な場合にお使い下さい。
風柳