2015-08-14 77 views
0

我有一個rails網站,我在其中使用deviseOmniAuth進行身份驗證(電子郵件+社交身份驗證)。現在我想實現一個將作爲我的Android應用程序後端的api。我想知道如何擴展現有的身份驗證系統,以便我可以爲我的android用戶提供相同的電子郵件和社交登錄身份驗證功能?另外,一個人應該可以在web和android應用上使用相同的憑據登錄。設計和OmniAuth api

回答

0

您需要在用戶表中添加api標記字段。

每次當一個android用戶請求登錄,在成功匹配電子郵件和paasword之後,一個API令牌將會創建到期時間。然後每次必須使用android請求發送API令牌。

如果API令牌有效,那麼將完成請求。

爲了區分你的要求,你可以在你的路線一樣/ API/V1 /登錄

+0

我加入這個領域的auth_token和我使用simple_auth_token實現這個寶石使用的命名空間。我遵循這個博客的實施http://provoost.tumblr.com/post/80873086965/json-api-authentication-using-devise-tokens。但通過這樣做,api的身份驗證正常工作,但網站身份驗證停止工作。 –

+0

這種方法都可以正常使用。 –

+0

根據你的建議,我使用了不同的命名空間的API我實現的代碼可以在這裏:https://github.com/lovishchoudhary/devisetest 使用這種方法我的網站身份驗證工作正常,但對於api只有捲曲的sign_up函數工作正常,但sign_in函數發生錯誤。我也在這裏詢問了相同的問題,其中詳細說明了這裏的全部細節: http://stackoverflow.com/questions/32050423/common-devise-login-for-web-and-api。請查看代碼並讓我知道我在做什麼錯誤 –