Я выполняю аутентификацию телефона (это обеспечивает firebase). После того, как пользователь вводит свой PHONENUMBER, firebase отправить код подтверждения на этот номер телефона.
Но иногда код не получает на мобильном телефоне, поэтому я хочу добавить параметр для повторной отправки кода.
В этом случае firebase не позволяет вам повторно отправить код мгновенно, это займет некоторое время, прежде чем вы сможете повторно отправить код. Иначе это даст ошибку:
Я добавил timeinterval из 60-х, прежде чем кнопка повторной отправки включена, но это не то время, когда требуется Google.
Это немного больше может составлять 80-90 секунд. Я прочитал документы, но ничего не нашел об этом.
Может ли кто-нибудь просветить меня об этом? Сколько времени потребуется для отправки кода?
Для " формальности " вот мой код:
var appVerifier = window.recaptchaVerifier;
fire.auth().signInWithPhoneNumber(refinedNumber, appVerifier)
.then(function (confirmationResult) {
thisclass.setState({
btnLoading: '',
page: 'code'
})
var timeleft = 60;
setInterval(function(){
if (timeleft > 0) {
timeleft--;
thisclass.setState({
resendTime: 'Resend Code In '+timeleft+'s'
})
}else{
thisclass.setState({
resendTime: '',
resendEnabled: ''
})
}
}, 1000)
// user in with confirmationResult.confirm(code).
window.confirmationResult = confirmationResult;
}).catch(function (error) {
// Error; SMS not sent
// ...
});
Не должно быть определенного периода времени для ожидания повторной отправки кода. Однако из-за задержек при доставке рекомендуется дождаться повторного отправки кода. FirebaseUI-web ждет 15 секунд перед повторной отправкой кода:
Это также важно, поскольку существует ограничение на то, сколько раз код отправляется на тот же номер телефона, чтобы предотвратить возможное злоупотребление.