公開された地図検索サービスAPIを利用し、派生となるコンテンツサービスを構築するサイトが増えている。MSのVirtual Earthは、Windows Live IDと連携するなどWindows Vistaとも親和性が高い。
Windows Liveは、マイクロソフトがオンラインで展開する「検索」「メール」「ブログ」「地図」「メッセンジャ」などを提供するWebプラットフォームだ。
これらの機能はユーザーの目から、「http://www.live.com/」というURLで、Webサイトとして認識できる。しかし、実際にはAPI(Application Program Interface)として各サービスが構成されており、開発者がそのAPIを用いることで、それぞれのサービス機能を自由に呼び出すことが可能だ。上記のlive.comでは、各種サービスをまとめたり、ほかのオープンなAPIと連携することもできるLiveガジェットが用意されており、Microsoft自身もマッシュアップでサービス連携をしているのだ。
最近では、Webで提供されるサービスを組み合わせて新たなアプリケーションを作っていく、この「マッシュアップ」が盛んなことは、Webデザインの場にも認知されているほどだ。Web上の情報が膨大なものへと成長と遂げる中で、サービス間連携はいっそう価値が高まっていくのである。
オンライン・ムックPlus「Windows Liveが魅せる次世代マッシュアップ」のこの記事では、Windows Liveで提供されている主なAPIの使い方と、マッシュアップが実際にどのように行われるのかを解説していく。記事中には、幾つかのJavaScriptのソースコードが登場するが、自ら体感していくコツは、一部の数値を変更するなどして、変化の楽しみを見ていくことだ。
Windows Liveの開発者向けポータルは、「http://dev.live.com/」である。このサイト上の説明にあるように、Windows Liveでは、表1に示すAPIを提供している。
表1■Windows Liveで提供されるAPI
サービス | 説明 |
---|---|
Custom Domains | カスタムドメインの管理機能を提供する |
Expo | Live Expo(オンライン上の売買サービス)の管理機能を提供する |
Gadgets | Live Gadgetsを提供する |
Messenger | Live Messengerを操作する |
Search | Live Searchによる検索機能を提供する |
Spaces | Live Spacesによるブログ管理機能を提供する |
Virtual Earth | Virtual Earthによる地図の検索/表示機能を提供する |
Windows Live ID | Live IDを使ったアカウント機能を提供する |
APIの呼び出し方は、該当するAPI種別によって異なっているが、大別して次のタイプへと分類することができる。
1)JavaScriptとして提供されるもの
利用がもっとも簡単なのが、このJavaScriptのコントロールとして提供されるAPIだ。利用したい場合には、JavaScriptのソースをscriptタグ要素で読み込み、自らのWebページへと必要なタグを埋め込むだけでよい。
2)SOAPやXML-RPCのWebサービスとして提供されるもの
次に利用しやすいのが、Webサービスとして提供されるものだ。Webサービスであることから、利用する側にはそれを解釈するアプリケーションが必要だ。ただし、そのアプリケーションは、どのような開発言語で記述されていても問題ない。
これらは、クライアントのアプリケーションや、サーバに配置したWebアプリケーションから呼び出して利用するAPI群だ。
3)COMコンポーネントとして提供されるもの
幾つかのAPIは、COMコンポーネントとして提供されている。これは主にクライアント(Windows XPやWindows Vista)上で実行するアプリケーションであることから、Windows Liveを利用する際に使うことになる。
このアプリケーションは、Visual BasicやC#などを使って開発する。
ここで誤解しないでほしいのは、Windows Live APIのサービスと、http://www.live.com/との関係は密接なものではないという点だ。
例えば、Virtual Earthは、地図表示するコントロールを提供するが、このコントロールは、Windows Serverだけでなく、SolarisやLinux上のWebサーバでも自由に配置することができるオープンなサービスだ。
Copyright © ITmedia, Inc. All Rights Reserved.