對於使用JSON API進行前端開發的應用程序,此gem(「devise_token_auth」)用於令牌身份驗證。 我們可以使用這個gem進行服務器端渲染嗎?如果是,那麼如何將以前的響應添加到當前請求中?「devise_token_auth」gem是否支持基於Web的身份驗證?
回答
我不知道這是不是還在爲你當務之急,但我想在一些建議拋出。
爲了您的API,你可以在devise_token_auth拋,它會做你所需要的一切爲了驗證那裏。
如果你需要的網頁服務器端渲染身份驗證(如登錄表單,重置密碼錶單等)隨便扔在普通色器件了。它將與你完全相同的用戶模型和表格一起工作,並且使用與devise_token_auth一起使用的相同資源來啓動和運行它們將會產生一些摩擦。
的Gemfile
#autentication and authorization
gem 'devise', '~> 3.5', '>= 3.5.6'
gem 'devise_token_auth', '0.1.37'
然後運行
bundle
運行安裝程序爲色器件:
rails generate devise:install
然後生成您的用戶模型:
rails generate devise User
立即安裝devise_token_auth:
rails g devise_token_auth:install User "auth"
,並確保您的數據庫遷移:
rake db:migrate
我認爲devise_token_auth可能會覆蓋您的用戶模型,我不能肯定,但如果這樣做,保持僅針對devise_token_auth的遷移並忽略Devise的遷移。
然後確保你的routes.rb一致的:mount_devise_token_auth之前
Rails.application.routes.draw do
devise_for :users
root "home#index"
namespace :api, defaults: { format: :json } do
namespace :v1 do #I namespace my routes
mount_devise_token_auth_for "User", at: "auth"
end
end
end
devise_for一定要來。
然後,只需參考官方裝置和後製定令牌身份驗證文檔,可以使這兩個解決方案爲你工作。
希望這有助於人誰達到這一點,有必要對移動應用程序和瀏覽器的Web應用程序驗證用戶身份。
謝謝。我會試試這個! – vipin8169
在我使用的版本(0.1.38)有標準色器件功能(基於Web的認證)的支持 - 您可以用'config.enable_standard_devise_support = TRUE' – etagwerker
只是爲了記錄了'devise_token_auth'配置啓用我已經獲得了兩種解決方案,不使用配置開關,而是使用'api'或任何其他特殊命名空間命名所有與設計令牌認證有關的命令。 –
- 1. Zuul是否支持OAuth身份驗證?
- 2. AFNetworking是否支持NTLM身份驗證?
- 3. Mono \ Xamarin是否支持基本身份驗證?
- 4. 需要支持基於網絡的身份驗證
- 5. 在Web API的Swagger文檔中支持基於令牌的身份驗證
- 6. 在Grails中支持基本身份驗證和基於表單的身份驗證
- 7. SAVON是否支持客戶端證書身份驗證
- 8. ASIHTTPRequest是否支持ios中的https摘要身份驗證?
- 9. Azure VM中的WASB是否支持Kerberos身份驗證?
- 10. 確定是否瀏覽器支持集成的身份驗證
- 11. Greenplum是否支持其節點之間的Kerberos身份驗證?
- 12. 基於不依賴表單身份驗證的基於Cookie的身份驗證
- 13. YouTube_it Gem Bad身份驗證
- 14. Amazon S3是否支持帶有基本身份驗證的HTTP請求
- 15. 對身份驗證的Firebase支持
- 16. ejabberd中的oauth2身份驗證支持
- 17. Rest客戶端是否支持NTLM身份驗證?
- 18. System.Net.Mail.SmtpClient是否支持CRAM-MD5身份驗證?
- 19. Meteor項目是否考慮添加Persona身份驗證支持?
- 20. Phoenix框架是否支持Windows身份驗證?
- 21. Amzon congnito是否支持IAM用戶身份驗證
- 22. Postgresql JDBC驅動程序是否支持Pgpass身份驗證?
- 23. 基於證書的身份驗證
- 24. 基於角度令牌的基於身份驗證的驗證
- 25. Web服務的基本身份驗證
- 26. 基於聲明的身份驗證是否比基本身份驗證更安全?
- 27. LDAP身份驗證支持節點js
- 28. HTTP身份驗證不支持CGI
- 29. Flex FileReference不支持NTLM身份驗證
- 30. 這種基於JWT的身份驗證方法是否安全?
如果您正在尋找簡單的服務器端解決方案,爲什麼不使用'devise' gem? – domp
我可以使用設計,但不支持移動應用程序的API。我想要支持網站和移動應用的東西。 – vipin8169