05 January 2012
今天發現前陣子有使用到Facebook登入的案子,
突然掛了! 不能使用Facebook登入了....
去查了一下,原來Facebook API改版....
老實說,我覺得這樣機制很差....應該也保留舊有機制,而不是連通知都沒有就改版了!

Ok, fine! 其實也沒有太大差別!
主要是改一些參數名稱!
至於前面的註冊手續都相同! 可以來前一篇看!


至於coding實作如下,
一樣得嵌入js檔,
<script src="http://connect.facebook.net/en_US/all.js"></script>

接著一樣要init,但是多了一個參數,就是oauth,以及從以前的response.session改成response.authResponse
<script>
//先做init的動作,輸入自己的app id
FB.init({
appId:'你自己的app id',
cookie:true,
status:true,
xfbml:true,
oauth : true // 多了這個參數
});




//下面是實作一個登入的function
function fnLoginFb(){
FB.login(function(response) {
//先判斷是否已經登入了,如果是,就直接
if (response.authResponse){
FB.api('/me', function(response) {
alert(response.email);
});
//下面是沒有登入時才會做的,會去subscribe一個event,就是去監聽一個login event(也就是說login成功以後,會接收到訊息)
}else{
FB.Event.subscribe('auth.login', function(response) {
if (response.authResponse) {
FB.api('/me', function(response) {
alert(response.email);
});
}
});
}

}, {scope:'email'});

}



</script>

然後下面就是實作FB登入的按鈕了!








blog comments powered by Disqus