Ich möchte meine Rails-Web-Service mit cURL testen, aber bisher konnte ich es nur deaktivieren before_filter :authenticate_user!
deaktivieren. Aber ich möchte mich a priori anmelden und dann erstellen, zerstören etc.Wie verwenden Sie cURL zur Authentifizierung in einer Rails-Anwendung, die Devise verwendet?
Ich sah, dass mit cURL Sie die Session-Informationen in einem Cookie authentifizieren und speichern können, die Sie für Ihre folgenden Anfragen verwenden, aber ich konnte nicht t es mit Devise funktioniert: in meinem Szenario der Benutzer sich mit der E-Mail/Passwort-Kombination, so versuche ich:
curl \ -X POST \ -d '[email protected]&password=password' \ -c cookie \ http://localhost:3000/users/sign_in > out
und ich bekomme: ActionController::InvalidAuthenticityToken in Devise/sessionsController#create
Könnte mir jemand eine Idee geben,/ein Beispiel?
Danke!
Dies funktioniert für GET-Anforderungen, für POST-Anfragen scheint es jedoch nicht zu funktionieren. – Altonymous
Das könnte sein, weil Sie ein CSRF-Token für Non-GET-Anforderungen in Rails 3 benötigen (http://weblog.rubyonrails.org/2011/2/8/csrf-protection-bypass-in-ruby-on-rails /) – iainbeeston
Die Authentifizierung funktioniert für mich, nachdem ich die einfachen und doppelten Anführungszeichen gewechselt habe, aber auf nichts zugreifen konnte. – graywh