楽天ウェブサービス初心者入門講座 に関する質問
【質問】
取得件数である hits の上限がどうして30件までなのでしょうか?
JavaScript や prototype.js でのデフォルトの設定のようなものなのでしょうか。またこの値を変更するにはどうしたらいいですか。
【回答】
お問い合わせの件ですが、答えは単純で、楽天ウェブサービスの仕様がそのようになっているからです。
楽天ウェブサービスのオンラインドキュメントに 楽天商品検索API についての詳細な説明があります。
http://webservice.rakuten.co.jp/api/itemsearch/
このページの入力パラメーターの説明部分に、サービス固有のパラメータがあり、その6番目に、
『1ページあたりの取得件数 hits int 1から30までの整数』と書かれています。
取得件数が多すぎるとサーバーに負荷がかかるので、30件ぐらいが適当だと考えているのではないかと思います。(想像ですが)
利用者側としても取得件数が多すぎると、処理に時間がかかるため、30件で十分だと思います。
30件以上を一度に表示するには、JavaScript側で連続して2回以上非同期通信を行なえば可能です。変数にデータを保存しておいて、60件取得したら表示するようにしたらよいだけです。
つまり可能だけれど、自分でプログラムを工夫する必要があるということです。
しかしいろんな条件を考えなければいけないので、プログラムが複雑になります。
また頻繁に通信を行なうと、サーバーに負荷がかかるため、おすすめできません。仕様通り30件以内での利用を考えたほうが良いと思います。