我嘗試使用身份驗證開發單頁應用程序。我使用Devise(Rails)和AngularJS。 由於一些不同的原因,我的rails應用程序和我的angularjs應用程序不在同一臺服務器上。所以,我必須處理跨域問題......並且我無法在頭中發送X-CSRF-Token。 我可以正確登錄和註銷併發送GET請求沒有問題。在我的導軌控制器中,我可以使用current_user,它已正確設置。 但是,當我發送POST請求時,current_user爲空。看來我的session_id沒有發送。這個問題是由於跨域,因爲如果我從同一臺服務器發送我的ajax請求,它是好的。設計AJAX - POST請求:current_user爲空
我認爲,我有兩個解決方案: - 不要使用基於身份驗證的cookie,但使用令牌 - 將前端和後端放在同一臺服務器上。
其他想法?爲什麼當我從跨域發送POST請求時,current_user爲空?
THX的目的,方法是:用authentication_token兼容的oauth2爲SSO認證(如Facebook)?順便說一下,我可以使用oAuth來管理我的令牌嗎? – vpoulain
是的,你可以讓它一起工作。這只是另一種類型的認證,你會連接到你的用戶在這裏是一個不錯的軌道蒙上插曲http://railscasts.com/episodes/235-omniauth-part-1。如果您將自己的應用視爲另一個身份驗證提供商,那麼我相信這是可能的,但不確定這是否會帶來好處。事情是設計已經有一個管理自己的令牌的系統。 –