javascript facebook authorization with popup window (經由彈出視窗進行facebook認證) using PHP and javascript 一般使用facebook PHP SDK做登入都是採用getLoginUrl函式取得連結(如官方此範例),認證完後會轉址回來並帶些facebook認證確認的state、code等get參數,在使用者體驗上非常的不好,甚至有可能在已帶有get參數的頁面上再轉址回來後會導致異常。 在此使用Facebook PHP SDK 3.0搭配javascript的方式,用popup window做認證。今年年初Facebook PHP SDK 3.0的更新中已有搭配javascript的範例,但有認證成功後無窮reload迴圈的問題,網路上普遍是IE發生問題,筆者本身是在Mac的chrome有此問題(問題出在下方的程式碼)。 FB.Event.subscribe('auth.login', function(response) { // do something with response login(); }); 故我們得自己創建popup authorization window,流程如下: 使用者按下Facebook登入/認證按鈕 javascript產生一個window並且將其導向facebook登入/認證的網址