2012-06-16 12 views
5

Sto utilizzando Omniauth con Devise utilizzando la strategia google_oauth2. Funziona bene, ma ora mi piacerebbe cambiare il percorso di autorizzazione con qualcosa della mia scelta.Modifica URL di autorizzazione Omniauth

In realtà è http://localhost:3000/users/auth/google_oauth2 mentre mi piacerebbe molto più semplice http://localhost:3000/login poiché è semplice da ricordare.

Non solleverà alcun errore dal momento che ho disabilitato il database Devise autenticabile (l'unico modo per accedere è tramite un account Google).

Come posso fare?

Grazie.

+0

Sto ancora imparando molto Rails, quindi non sono fiducioso in questa risposta (lasciandolo quindi come commento), ma potresti usare 'match'? 'match" users/auth/google_oauth2 "=>" login # index "'? –

risposta

-1

Utilizzando OmniAuth senza altre autenticazioni
Se si utilizza solo omniauth di autenticazione, è necessario definire un percorso di nome new_user_session (se non definito, verrà utilizzato root). Di seguito è riportato un esempio di tali percorsi (non è necessario includere, se si utilizza anche database o altro l'autenticazione con omniauth):

devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" } 

devise_scope :user do 
    get 'sign_in', :to => 'users/sessions#new', :as => :new_user_session 
    get 'sign_out', :to => 'users/sessions#destroy', :as => :destroy_user_session 
end 

Nell'esempio precedente, il controller sessioni non ha bisogno di fare niente di speciale. Ad esempio, sarà sufficiente mostrare un collegamento all'autenticazione del provider.

di riferimento: https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview

Problemi correlati