使ってみよう! Windows Live SDK/API

第43回 JavaScriptでWindows Live統合アプリの開発

この記事を読むのに必要な時間:およそ 5.5 分

はじめに

前回Windows Liveサービスと統合したアプリ開発を可能にするMessenger ConnectというAPIコレクションについて概要を紹介しました。今回からもう少し詳しくAPIや仕組みについて紹介していきます。

今回は,Webブラウザーベースのアプリ開発を可能にするJavaScript APIの利用を紹介します。

JavaScript APIオブジェクト

JavaScript APIは,前回で紹介したようにscriptタグでライブラリーを参照して利用します。JavaScript APIを利用すると,短いコードでWindows Liveと統合したWebアプリが作成可能です。またPHPなどを使ってサーバー側の処理を記述する必要ありません。

<script src="https://js.live.net/v5.0/ja/wl.js" type="text/javascript"></script>

ライブラリーを参照すると,WLオブジェクトが使えるようになります。WLオブジェクトの各メソッドを呼出し,Windows Liveサービスへのサインイン・サインアウトや,イベント処理,ユーザーデータのアクセスなどを行います。

WLオブジェクトに用意されているメソッドは次の通りです。

メソッド 概要
WL.init JavaScript APIの初期化
WL.login サインイン処理
WL.logout サインアウト処理
WL.getLoginStatus サインイン状態の取得
WL.getSession ユーザーのセッション情報の取得
WL.Event.subscribe イベントハンドラーの登録
WL.Event.unsubscribe イベントハンドラーの削除
WL.api REST APIの呼び出し
WL.ui UIの描画

また,WLオブジェクト以外に登場するオブジェクトは次の通りです。

status サインイン状態を示す値と,下記のsessionオブジェクトを持っています。
session 現在のセッション情報
OAuthのアクセストークンや認証トークン,Scopeなどの値を持っています。
APIレスポンス REST APIのレスポンス結果のJSONオブジェクト
構成はデータにより異なります。

以上のように,現在のJavaScript APIはシンプルな構成になっています。Messenger ConnectのJavaScript APIは,Facebookなどのサービスと連携したアプリへの機能追加も考慮し,シンプルな構成で記述できるようになっています。このAPIの構成はFacebookのJavaScript SDKと同等になっています。FacebookのSDKを利用したことのある方であれば,同様の記述でWindows Live統合のアプリを作成したり,既存アプリに機能を追加することが簡単に可能です。

それでは,WLオブジェクトの機能を順に見ていきましょう。

初期化処理

WLオブジェクトのinitメソッドで,ライブラリーの初期化処理を行います。イベントの関連付け処理を除いて,WLオブジェクトのほかのメソッドを呼ぶ前にinitメソッドを呼びます。

メソッドには,アプリのClient IDやリダイレクト先をJSON形式で渡します。Client IDは,アプリの登録時にアプリケーション設定サイトで取得した値です。

WL.init({
    client_id: "xxxxxxxx",
    redirect_uri: "http://***.jp/sample.html"
});

指定できるプロパティは次の通りです。通常はclient_idのみ使います。サインインした後のページを変更したい場合は,redirect_uriも指定します。

名前 説明
client_id アプリのClient ID(指定必須)
redirect_uri サインイン後に移動するURL。指定しない場合はサインインボタンをクリックしたページです。
logging trueを指定した場合,エラーなどのログをブラウザーのコンソールに出力します。規定値はtrue
status trueを指定した場合,Windows Liveからサインイン状態を取得します。自動サインイン機能に使用します。規定値はtrue
response_type codeまたはtokenを指定。OAuthの仕様に関する部分で今回は割愛します。規定値はtoken

ログは,Internet Explorerの開発者ツールでは図1のように表示されます。

図1 ログの表示

図1 ログの表示

著者プロフィール

松江祐輔(まつえゆうすけ)

日本システムウエア株式会社 勤務。現在,ハードウェア設計・検証業務を担当。大学生・大学院生時代はベンチャー企業 有限会社ミレニアムシステムズにプログラマーとして従事。趣味はプログラミング。好きな言語はVisual Basic。Microsoft MVP for Windows Live Platform(Jul 2010 - Jun 2011),Windows Live(Jul 2011 - Jun 2013)。

URL:http://katamari.jp

コメント

コメントの記入