如何在 Expo React Native 应用程序中使用电话号码登录/注册用户?

问题描述 投票:0回答:1

问题

Module '"firebase/auth"' has no exported member 'RecaptchaVerifier'.ts(2305)

按照 https://firebase.google.com/docs/auth/web/phone-auth?authuser=0&hl=en#use-invisible-recaptcha 部分中的步骤操作后,我收到上述错误。

不确定我缺少什么...我更新了软件包并仔细检查了文档,但发现没有办法解决这个问题。我没有 Apple 开发者帐户,也不打算很快获得一个,所以我无法使用 Apple 的静默通知服务。我需要这个看不见的验证码。

获取确认码

     .....
     ...

     const confirmation = await signInWithPhoneNumber(
          FIREBASE_AUTH,
          phoneNumber,
          RecaptchaVerifier
        );

    ...
    .....

RecaptchaVerifier
对我来说很失败。

我做了一些研究,发现

expo-firebase-recaptcha
已被弃用。看来 Firebase 文档有唯一明智的方法来做到这一点。

我从 Firebase 的 reCaptcha 中了解到,它的工作方式是不可见的(使

invisible
容器的大小为
View
)。因此,用户无需与其交互,Firebase 在后面处理该操作。用户只会收到 OTP,他们可以继续使用电话号码登录或创建帐户。

我是这项技术的新手,感谢所有帮助。

firebase react-native firebase-authentication expo react-native-firebase
1个回答
0
投票

react-native-firebase
与您上面的文档链接指向的 Firebase Web Client SDK (
firebase
) 不同。

您需要按照 RNF 的文档进行电话身份验证

如果有兴趣,我写了这篇文章,介绍 RNF 与 Firebase Web 客户端 SDK 和 Expo/RN 之间的区别。

© www.soinside.com 2019 - 2024. All rights reserved.