2012年5月28日 星期一

Ruby on Rails 的 Facebook 登入



最近在學RoR,把之前的東西改了一下變成可用的東西,紀錄與分享之。

讓RoR使用Facebook登入只要簡單的數個步驟 ( 不安裝奇怪的gem的情況下 )

假設網站的網域叫做 http://localhost:3000/

跟Facebook連結的Url叫做 http://localhost:3000/connect/ (推薦最後加 / )

1. 讓網站重新導向到 Facebook 的授權頁面 → 按確定之後會自動跳轉回自己網站的"那個url"
    #跳轉的頁面url會像是這樣 http://localhost:3000/connect/?code=*****
2. 根據我們獲得的 code , 我們再去抓一個特定網址的內容,裡面的內容像是
    access_token=********&***=**** 
    #最重要的就是抓到那個access_token,有了他我們就能呼叫 Facebook的 Graph API
3. 用access_token去呼叫Graph API取得使用者的 Facebook ID, Name, Mail, 再跟內建      的User合併 ( 如果是authlogin做的使用者可能需要查一下對應的屬性 )


實際Code如下,只要做一個Controller,把他加到routes就好了


1 則留言:

  1. params[:code] 打印出来是nil 请问是为什么?

    回覆刪除