FB API登入

FB API登入程式:

第一步 :匯入 javascript 並做初始化設定。

  • 注意,台灣語系使用zh_TW
<script src='https://connect.facebook.net/zh_TW/sdk.js#xfbml=1&version=v2.10'></script>
  •  
  • fb_appid:是在FB開發者頁面,fb官網給的應用程式編號。
  • version:版本號一樣依據FB開發者頁面會看到,像我的版本號是從v2.08升級到v2.10,只不過一般情況下不用調整。
FB.init({
	appId : {fb_appid},
	cookie : true, // enable cookies to allow the server to access
	xfbml : true,
	version : 'v2.10'
});

第二步:呼叫 FB Login AP

<!--點擊FB 登入圖片,呼叫callFB函式。-->
<img id='img_fb' width='20px' height='20px' title='FB' onclick='callFB()'>
  • fields:id、name、gender、email 是FB開發者申請時,就預設可以取得的欄位,如果需要更多用戶資訊,需額外向FB說明用途,申請等待通過。
  • FBlogin:自定義函式,從FB取得欄位資訊到配合後端介面登入。
function callFB(){
	//FB.login會彈出登入視窗
	FB.login(function(response){
		if (response.status === 'connected') {
			FB.api('/me','GET',{
				"fields" : "id,name,gender,email"
			},function(response){
				//FB登入視窗點擊登入後,會將資訊回傳到此處。
				FBlogin(response.email,response.name,response.gender);
			});
		}
	},{
		scope : 'public_profile,email'
	});
}

第三步:將從FB取得欄位回傳至後端

  • 自定義函式,透過jquery呼叫後端登入程式。
var FBlogin = function(email,name,gender){
	var _data = {
		'email' : email,
		'name' : name,
		'gender' :gender
	};
			
	jQuery.ajax({
		type : 'POST',
		url : '/funwin/user/FBlogin',//登入網址
		data : _data,
		dataType : 'json',
		success : function(data){
			//登入成功,刷新頁面
			location.reload();
		},
		error : function(XMLHttpRequest,error,errorThrown){
			//登入失敗
		}
	});
}

fb開發者頁面說明:

1.申請應用程式:

  • 網址:https://developers.facebook.com/apps/ ,點擊新增應用程式。

  • 新增完畢後,可以找到你的應用程式編號以及API版本,應用程式編號就是前面的{fb_appid}、

2.輸入應用程式網域跟網址,此處會跟你的應用程式編號相對應,所以如果資訊錯誤的話,登入視窗將拋出驗證錯誤的訊息。

fb API登入說明就到此為止。


補充說明:(可看可不看)

官方登入說明文檔:https://developers.facebook.com/docs/facebook-login/web

此處有一個取得代碼按鈕,可以幫忙產生FB登入按鈕及函式。

step2,是匯入FB API。

我是直接改成  <script src='https://connect.facebook.net/zh_TW/sdk.js#xfbml=1&version=v2.10'></script>

step3,他會幫你自動產生一個FB 登入的圖片,並有各種樣式可以選擇,只不過我前面是選擇引用了自己的圖片。

 

 

 

 

 


因為很多文章是過往自己搜集的資料、圖片,如有侵權疑慮請告知,將立即下架刪除。