如何通过omniauth更改/ auth /:提供者路径

时间:2013-05-31 02:28:48

标签: ruby-on-rails omniauth

要删除我在routes.rb中写的控制器名称,就像这样。

get "/:user_id/:id", :to => "words#show", :as => :short_user_word

它运行正常,但是当我尝试使用omniauth中的路径“/ auth /:provider /”时, 第一条路线覆盖了omniauth的路径。

Omniauth回调网址使用以下路线。

get '/auth/:provider/callback' => 'authentications#create'

我还要设置路径“/ auth /:provider/”,但我不知道如何写这个右侧。

我已经阅读了这个问题和答案,但我找不到如何使用:setup选项。

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

我该如何避免这个问题?

1 个答案:

答案 0 :(得分:0)

您的路线订单必须如下

get '/auth/:provider/callback' => 'authentications#create'
get "/:user_id/:id", :to => "words#show", :as => :short_user_word

首先,如果找到/ auth /:provider它会选择此路由,否则如果获取正常路由