Ich versuche, ng-Token-Auth (Angular 1) auf einem separaten Frontend zu verwenden, um Passwörter zurückgesetzt werden und Konto E-Mail-Adressen auf einem Ruby on Rails 5.0-Backend bestätigt werden.Wie werde ich mit der E-Mail-Bestätigung und dem Passwort-Reset-Link mit ng-token-auth und devise-token-auth zur richtigen URL weitergeleitet?
Nachdem ich auf den Link klicken, der die Authentifizierung api trifft ich diese umgeleitet bin immer:
http://localhost:8080/?client_id=<client_id>&config=default&expiry=<expiry_stamp>reset_password=true&token=<token>&uid=<email address>#/reset-password
Der /#/reset-password
Teil ist am Ende des Reset-Link platziert zu werden.
denke ich, Winkel zu bekommen und meine Funktionen einwandfrei funktionieren muss ich etwas, das ähnelt: http://localhost:8080/#/reset-password?client_id=&config=&expiry=&reset_password=&token=&uid=
In app/views/devise/mailer/reset_password_instructions.html.erb
Ich habe folgende Template-Code:
<p><%= t(:hello).capitalize %> <%= @resource.email %>!</p>
<p><%= t '.request_reset_link_msg' %></p>
<p><%= link_to t('.password_change_link'), edit_password_url(@resource, reset_password_token: @token, config: message['client-config'].to_s, redirect_url: message['redirect-url'].to_s).html_safe %></p>
<p><%= t '.ignore_mail_msg' %></p>
<p><%= t '.no_changes_msg' %></p>
Innerhalb meiner app.js auf die Frontend, ich bin die Konfiguration $authProvider
mit den folgenden:
function AuthSetup($authProvider) {
$authProvider.configure({
apiUrl: 'http://localhost:3000',
passwordResetSuccessUrl: 'http://localhost:8080/#/reset-password'
});
}
ich würde gr Ich schätze jede Hilfe oder Anleitung, die jemand anbieten könnte. Vielen Dank.
Sind Sie sicher, dass dieser Link von der Website und nicht von der E-Mail angeklickt werden soll? –
Wenn Sie das Rails-Backend verwenden, lassen Sie diese Dinge von Devise für Sie erledigen. Sie sollten wahrscheinlich nur das 'user_id' /' User' Objekt an die jeweilige Aktion senden, die dann eine Email sendet..Lesen Sie hier für Details http://StackOverflow.com/a/41790443/2545197 – Abhinay
@maxple Dies ist für Links, die sind per E-Mail gesendet werden. – Robert