Voglio testare il servizio web dei miei binari usando cURL, eppure finora ho potuto farlo solo disattivando before_filter :authenticate_user!
. Ma mi piacerebbe accedere a priori e quindi creare, distruggere ecc.Come si usa cURL per l'autenticazione su un'applicazione Rails che utilizza Devise?
Ho visto che con cURL puoi autenticare e salvare le informazioni di sessione in un cookie, che usi per le tue richieste successive, eppure non potevo t farlo funzionare con Devise: nel mio scenario, l'utente accede utilizzando una combinazione di indirizzo email/password, quindi sto cercando:
curl \ -X POST \ -d '[email protected]&password=password' \ -c cookie \ http://localhost:3000/users/sign_in > out
e ottengo: ActionController::InvalidAuthenticityToken in Devise/sessionsController#create
qualcuno potrebbe darmi un'idea/un esempio?
Grazie!
Questo funziona per le richieste GET, tuttavia, per le richieste POST non sembra funzionare. – Altonymous
Ciò potrebbe essere dovuto al fatto che è necessario un token CSRF per richieste non GET in Rails 3 (http://weblog.rubyonrails.org/2011/2/8/csrf-protection-bypass-in-ruby-on-rails/) – iainbeeston
L'autenticazione stepped ha funzionato per me dopo aver cambiato le virgolette singole e doppie, ma non ho potuto accedere a nulla. – graywh