[英]A generic omniauth provider/strategy for devise
我將omniauth策略實施為gem,但意識到這只是oauth的基本實現。
我設計中。 rb是這樣的:
config.omniauth :mystrategy, 'key', 'secret'
有沒有一種更簡單的方法可以在設計中執行此操作而不創建gem,我是否可以在一個conifg塊中進行配置,例如
config.omniauth :mystrategy do |strategy|
strategy.key ='blah'
strategy.authorize_path = 'blah'
end
你能給我一個例子或指出正確的方向嗎? 我在網上看到的所有內容都是關於將其構建為戰略瑰寶的。
聽起來您已經從頭開始編寫了oauth策略,並將其打包為gem。 如果這只是您完全實現的oauth或oauth2策略,我認為您不需要這樣做或創建一個gem。 但是,我不確定僅在config塊中有任何方法可以做到這一點。 您應該能夠通過使用https://github.com/intridea/omniauth-oauth或https://github.com/intridea/omniauth-oauth2並使用自述文件中描述的幾種方法創建子類來做到這一點。
我自己還沒有做過,但這是其他omniauth策略采用的方法。 例如,omniauth-twitter基於omniauth-oauth策略,您可以通過其超類看到:
https://github.com/arunagw/omniauth-twitter/blob/master/lib/omniauth/strategies/twitter.rb
omniauth-facebook基於omniauth-oauth2策略:
https://github.com/mkdynamic/omniauth-facebook/blob/master/lib/omniauth/strategies/facebook.rb
只需在Omniauth :: Strategies命名空間中定義類-例如,Omniauth :: Strategies :: Mystrategy就足以讓您在omniauth配置中將其稱為:mystrategy,如此處“創建策略”中所述: https: //github.com/intridea/omniauth/wiki/Strategy-Contribution-Guide
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.