Есть ли способ отправить электронное письмо с подтверждением с Firebase Admin SDK с моего сервера Node.js?

Есть ли способ отправить электронное письмо с подтверждением электронной почты с моего сервера?

Вот как это делается на клиенте:

authData.sendEmailVerification().then(function() {

Есть ли способ сделать это на сервере?


person TheProgrammer    schedule 14.06.2017    source источник
comment
Аналогичный пост (пока без ответа): groups.google.com/forum/ #!topic/firebase-talk/cWdF8gkOH3w   -  person Frank van Puffelen    schedule 14.06.2017
comment
@FrankvanPuffelen Действительно похоже, хотя я думаю, важно отметить, что моя проблема связана с проверкой электронной почты, а проблема другого джентльмена связана с проверкой подлинности по телефону.   -  person TheProgrammer    schedule 14.06.2017
comment
Упс, хорошая мысль. Учитывая, что мы только что запустили аутентификацию по телефону, я склонен преувеличивать. :-)   -  person Frank van Puffelen    schedule 14.06.2017
comment
@FrankvanPuffelen ^^ Тем не менее, Джио из службы поддержки Firebase сказал мне, что в настоящее время нет возможности отправить электронное письмо с подтверждением с сервера. Это функция, которая находится на радаре Firebase или вообще нет? Я уже переработал свой код для отправки электронной почты с помощью SDK клиента firebase, но мне все еще любопытно :-)   -  person TheProgrammer    schedule 14.06.2017
comment
Я только что проверил все документы, потому что полностью ожидал, что смогу отправлять эти проверочные сообщения из Admin SDK. Но на самом деле: кажется, что его там нет. Я бы рекомендовал запросить функцию.   -  person Frank van Puffelen    schedule 14.06.2017
comment
@FrankvanPuffelen Готово ^^   -  person TheProgrammer    schedule 14.06.2017


Ответы (3)


firebase здесь

К моему удивлению, в настоящее время нет возможности отправить электронное письмо с подтверждением из Admin SDK. Я рекомендую вам запросить функцию.

С помощью Admin SDK можно сделать следующее: < em>обновите профиль пользователя, чтобы пометить его электронную почту как проверенную. Это позволяет вам взять под контроль весь процесс проверки, если вы хотите, заканчивая вызовом admin.auth().updateUser(...) (на Node.js см. ссылку для других поддерживаемых языков).

person Frank van Puffelen    schedule 15.06.2017
comment
Привет, это было добавлено в конце? - person TheProgrammer; 25.01.2018
comment
Я не могу найти доказательств того, что он был добавлен, и чем больше я думал о проблеме, тем больше имело смысла сохранять эту клиентскую сторону, и тем больше мне казался ненужным мой серверный подход администратора. Повторная отправка писем с подтверждением действительно должна обрабатываться ошибкой/кнопкой, сгенерированной на стороне клиента, когда аутентификация проверяется на стороне клиента. - person Matthew Rideout; 27.02.2018

Я только что столкнулся с той же проблемой, что и вы. Существует функция создания ссылки для подтверждения с использованием адреса электронной почты пользователя.

Я использовал эту функцию для массива адресов электронной почты, а затем загрузил результат в свой API автоматизации почты для отправки писем. Эта функция странно не документирована:

admin.auth().generateEmailVerificationLink([EMAIL_ADDRESS])
person Linh    schedule 01.02.2019

Ты можешь использовать :

axios.post('https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]',
    { requestType: 'VERIFY_EMAIL', idToken: response.data.idToken }
)

https://firebase.google.com/docs/reference/rest/auth#section-send-email-verification

person Khatib Abbas    schedule 01.08.2020