Firebase проверяет и сбрасывает пароль без отправки отдельных писем - PullRequest
0 голосов
/ 29 апреля 2020

В рамках создания автономного пользователя я хотел создать учетную запись на своем внутреннем сервере и отправить пользователю письмо с подтверждением. Но когда пользователь нажимает на ссылку подтверждения, я также хочу представить экран, чтобы установить его пароль.

В существующем веб-приложении у меня есть отдельные потоки для обработки проверки и сброса пароля. но они являются отдельными потоками.

Из следующего do c я мог видеть, что есть параметр, называемый mode, для идентификации действия. Используя это, мы в настоящее время обрабатываем действия проверки и сброса пароля.

Но есть ли способ использовать пользовательский режим или некоторые средства, чтобы определить, что пользователь должен перейти на другой экран после проверки.

Один из обходных путей, который я могу придумать, - это использовать continueUrl (может быть с пользовательской схемой). Не уверен, что это будет работать безупречно.

Может кто-нибудь поделиться своими мыслями по этому поводу.

1 Ответ

1 голос
/ 29 апреля 2020

Использование continueUrl действительно правильный путь. На основании mode вы можете решить, какое действие следует обработать, а затем вы можете перенаправить на continueUrl после того, как пользователь выполнил соответствующее действие.

Например, документация Вы ссылаетесь на следующий пример (обратите внимание на комментарий // TODO: If a continue URL is available...):

function handleVerifyEmail(auth, actionCode, continueUrl, lang) {
  // Localize the UI to the selected language as determined by the lang
  // parameter.
  // Try to apply the email verification code.
  auth.applyActionCode(actionCode).then(function(resp) {
    // Email address has been verified.

    // TODO: Display a confirmation message to the user.
    // You could also provide the user with a link back to the app.

    // TODO: If a continue URL is available, display a button which on
    // click redirects the user back to the app via continueUrl with
    // additional state determined from that URL's parameters.
  }).catch(function(error) {
    // Code is invalid or expired. Ask the user to verify their email address
    // again.
  });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...