How to change route of omniauth from /auth/:provider to /myapp/auth/:provider

后端 未结 3 1731
-上瘾入骨i
-上瘾入骨i 2021-02-19 11:45

How can I change the route that triggers omniauth from using /auth/:provider to /myapp/auth/:provider ?

I don\'t want to redirect either, because my server will send any

相关标签:
3条回答
  • 2021-02-19 12:28

    Add the following option in your initializer:

    option :request_path, 'https://yourdomain.com/auth/yourprovider/callback'
    

    Restart you app server and try!

    0 讨论(0)
  • 2021-02-19 12:34

    You can change it via :setup option

    Source: https://github.com/omniauth/omniauth/blob/e9978e377f1ac2b7271e5a8486dfe103a1c1d48d/lib/omniauth/strategy.rb#L304-L307

    0 讨论(0)
  • 2021-02-19 12:40

    Here is how I did this in the config.ru file. I my case, my provider is CAS.

    use OmniAuth::Builder do
      configure do |config|
          config.path_prefix = '/my-app-path/auth'
      end
      provider :cas,  CAS::OPTIONS 
    end
    

    Note that CAS::OPTIONS is an array with CAS configuration for omniauth::cas. This seems to work fine. I think you will have to change the omniauth callback too : /auth/:provider/callback should be prefixed to /my-app-path/auth/:provider/callback.

    0 讨论(0)
提交回复
热议问题