PerlでWeb APIを使いたおす 6

JSONとYAML

水野 貴明

2006年10月16日 16:40

XML以外のフォーマットを利用するケース


   ここまで紹介してきたAPIは全てXMLを利用してデータのやり取りを行ってきました。レスポンスデータとしてXML以外の形式を利用するAPIも多く存在します。よく利用されるデータ形式はJSONやYAMLなどです。

   JSONはJavaScript Object Notationの略で、JavaScriptの書式を利用したデータの表現方法です。同じ情報をXMLよりも少ないデータ量で表現できるほか、JavaScriptではパーサーを通さなくてもeval(Perlのevalと同じ機能を持つ)を利用して値を取り出せるという特徴があります。AjaxなどのJavaScriptを利用したデータのやり取りに使うAPIとしてよく利用されています。

   JSONを利用してデータを取得するAPIのサンプルとして、今回使うのはGeonames(注4)(図2、図3)が提供する地名から緯度経度を取得するサービスで、以下のようなURLでアクセス可能です。

Geonamesで地名を検索
図2:Geonamesで地名を検索
(画像をクリックすると別ウィンドウに拡大図を表示します)

Google Earthをまじえて情報を表示
図3:Google Earthをまじえて情報を表示
(画像をクリックすると別ウィンドウに拡大図を表示します)


   すると、リスト24のようなJSONデータが返ってきます。

リスト24:GeonamesのJSONデータ
GeonamesのJSONデータ
(画像をクリックすると別ウィンドウに拡大図を表示します)

   maxRowsで3を指定しているので、「tokyo」が含まれる3つのデータが返ります。JSONの詳しいデータ形式については以下のサイトを参照してください。


この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る