手動建立Facebook自動登入(v1.0-v2.2) Manually Build a Login Flow
此文章支援 v1.0、v2.0~v2.2
臉書提供三種「自動登入臉書帳號」的方式,javascript SDK、PHP SDK,以及手動建立。本篇只談手動建立,是利用 Facebook Graph API,有三個步驟。
- 請求code參數
- 用回傳的code參數,請求access_token參數
- 用回傳的access_token參數,取得使用者個資
Graph API v1.0
1. 請求code
https://www.facebook.com/dialog/oauth? client_id={YOUR_APP_ID} &redirect_uri={YOUR_REDIRECT_URL}
code=AQBW3oLLO7UBdYIlBiycdsq0-uBynPisB4cLGoNaVqo...(略)
2. 請求access token
https://graph.facebook.com/oauth/access_token? client_id={YOUR_APP_ID} &redirect_uri={SAME_REDIRECT_URL} &client_secret={YOUR_APP_SECRET} &code={CODE_STRING}
access_token=CAADh9ZCitjocBANzxLfZACFZCUNIajhZAER2EqBRSYLB5IIH...(略)
3. 用回傳的access_token參數,取得使用者個資
https://graph.facebook.com/me?
access_token={ACCESS_TOKEN_STRING}
得到登入者資料的json囉! { "id": "00000012345", "first_name": "帥帥", "gender": "男", "last_name": "薛", "locale": "zh_TW", "name": "薛帥帥", "timezone": 8, "verified": true }
Graph API v2.0-v2.2
由於官方聲明將在2015/4/30之後停用v1.0,若你要升級,只要加上/v版本編號/就好。
例如你若想要用 v2.0
1. 請求code。
https://www.facebook.com/v2.0/dialog/oauth? client_id={YOUR_APP_ID} &redirect_uri={YOUR_REDIRECT_URL}
2. 這一步同 v1.0
https://graph.facebook.com/oauth/access_token? client_id={YOUR_APP_ID} &redirect_uri={SAME_REDIRECT_URL} &client_secret={YOUR_APP_SECRET} &code={CODE_STRING}
3. 用回傳的access_token參數,取得使用者個資
https://graph.facebook.com/v2.0/me? access_token={ACCESS_TOKEN_STRING}
得到登入者資料的json囉! { "id": "00000012345", "first_name": "帥帥", "gender": "男", "last_name": "薛", "locale": "zh_TW", "name": "薛帥帥", "timezone": 8, "verified": true }
留言
張貼留言