今はソーシャルサービス全盛とあって、FacebookやTwitterなどと連携してサービスを提供するのが一般的です。しかし各プロバイダーの接続を一元化したりするのはちょっと面倒に感じていることでしょう。 そこで使ってみたいのがhello.jsです。多数のソーシャルプロバイダーをひとまとめにしてくれるJavaScriptライブラリです。

hello.jsの使い方

hello.jsの良いところはJavaScriptベースということでしょう。

こんなに多くのソーシャルプロバイダーに対応しています。

例えばFacebookでログインした場合。

アイコンや名前が取得できています。

他のサービスでも同様です。

Facebookの場合はJavaScript向けのAPIが公開されていますので、それを使っています。対してTwitterなどの場合はプロキシサーバを立てて、そこでキーを生成するようになっています。使い方は簡単で、

hello.init({
	facebook : '359288236870',
	windows : '000000004403AD10'
});

といった感じで初期化し、

hello( "facebook" ).login().then( function(){
	alert("You are signed in to Facebook");
}, function( e ){
	alert("Signin error: " + e.error.message );
});

でログイン処理ができます。Promiseも使えてとても簡単ですね。

そもそもログインしているかどうかは、

var online = function(session){
	var current_time = (new Date()).getTime() / 1000;
	return session && session.access_token && session.expires > current_time;
};

var fb = hello( "facebook" ).getAuthResponse();
var wl = hello( "windows" ).getAuthResponse();

alert(( online(fb) ? "Signed":"Not signed") + " into FaceBook, " + ( online(wl) ? "Signed":"Not signed")+" into Windows Live");

にて取得可能です。

hello.jsはJavaScript製、MIT Licenseのオープンソース・ソフトウェアです。

hello.js - Javascript API for OAuth2 authentication and REST services MrSwitch/hello.js