マッシュアップ・サイトを作る話の3回目です。
さて、APIツールを作るために、
自分のパソコンに開発環境を作りました。
phpを入れ、ウェブサーバーもインストールし、
スマーティ(Smarty)もダウンロードしました。
今回は、APIの仕組みを理解してAPIをマスターすること。
その結果として、アクアスで作ったHTMLサイトに、
まず楽天のお薦め商品を表示できるようにする、、
、、というのをゴールに設定しました。
なので、サイトごとに別々のスタイルで
商品を表示したいという事で、
スマーティを使うことにしました。
スマーティというのは、テンプレートエンジンと言って、
phpスクリプトで取得した情報を、
表示するためのテンプレートです。
イメージとしては、ブログやMTのテンプレートですね。
あれのもう少し高度なヤツって感じです。
【楽天のサーバーにリクエストを投げる】
↓
【返答をphpで解析して、必要な情報を取り出す】
↓
【Smartyでwebページに整形する】
と言う流れです。
こういう風に計算と整形を分ける事によって、
表示するデザインだけ変えるという事ができるわけですね。
だからこちらのページの商品情報も、
http://oyaji.usa-tips.net/
こちらのページで検索した結果も
http://oyaji.usa-tips.net/kensaku.html
商品情報を取得しているプログラムは共通で、
表示するためのテンプレートが違うだけです。
サイトによって検索結果の出し方を
自由に変えたかったので、これは必須条件でした。
APIツールのデータの流れ
楽天の商品を検索するには、楽天のウェブサーバーに、
キーワードやジャンルコード、並べ順、
価格の上限と下限などをまとめてリクエストします。
具体的には、URLの一番最後に?をつけて、
そのあとにkeyword=××&ganreId=××、、、、と
くっつけたヤツを送るわけです。
そうすると楽天のAPIサーバからXML形式で
返答(レスポンス)が返ってきます。
それをphpプログラムに取り込んで、さらに分解して、
こういう配列を作ります。
商品名 → グルコサミン
価格 → 2980
税金 → 税込み・税別
送料 → 送料別・送料込み
商品画像URL → http://、、、
アフィリURL → http://、、、
これをスマーティに送って、整形して表示するわけです。
この流れでできたのが、この検索ページになります。
http://oyaji.usa-tips.net/kensaku.html
ただこれは、サイトに来た人が検索キーワードを入力しないと
結果が出ないわけですから、自分のページが表示された瞬間に、
お薦め商品を出す事ができません。
なのでもう一工夫してみました。
Pre >
マッシュアップ・サイトの作り方(2)
Next >
マッシュアップ・サイトの作り方(4)