Ich verwende Devise auth token Edelstein für die Authentifizierung einiger Teile meiner Schienen App. Aber wenn ich versuche, einen neuen Benutzer mit dem Registrierungspfad zu erstellen, gibt es mir den folgenden Fehler {"errors":["Authorized users only."]}
. HierWie kann man auf den Token Auth Registration Controller zugreifen?
ist den rspec Code, den ich für den Test verwenden,
it 'creates a user using email/password combo' do
post api_user_registration_path, { email: 'xxx', password: 'yyy',password_confirmation: 'yyy'}
puts last_response.body
expect(last_response.body).not_to have_content('error')
end
Zusätzliche Informationen: Das Modellname ist 'User' und die Routen aussehen,
namespace :api do
scope :v1 do
mount_devise_token_auth_for 'User', at: 'auth'
end
end
Ich verstehe, dass Das Gerät erwartet, dass der Benutzer authentifiziert wird, bevor er auf diesen Pfad zugreift, aber da dies die Benutzerregistrierung ist, muss es außerhalb der Authentifizierung sein. Können Sie eine Lösung dafür vorschlagen? Gibt es irgendeine Konfiguration, die mir hier fehlt?
Haben Sie: registerable hinzugefügt in Ihrem Benutzermodell –
ja. habe diese in meinem Benutzermodell, 'devise: sperrbar,: database_authenticatable,: registrierbar,: wiederherstellbar,: erinnerbar,: verfolgbar,: validierbar,: bestätigbar,: omniauthable' – quixote
Haben Sie den 'Api :: UserRegistrationsController' von' Devise geerbt :: RegistrationsController' –