【问题标题】:React Native with Firebase Authentication使用 Firebase 身份验证反应本机
【发布时间】:2015-07-09 14:31:01
【问题描述】:

我知道using Twitter/Facebook Firebase authentication with React Native 会引发错误,因为显然这不是打开新身份验证窗口的正确环境。此外,电子邮件/密码验证也应该失败,因为它依赖于 React Native 不支持的 LocalStorage。在 React Native 中实现任何类型的 Firebase 身份验证以创建 Swift/ObjC 桥接器然后真的只使用 Swift/ObjC Firebase 身份验证库的最佳方法是什么?如果是这样,有人有这样做的例子吗?

【问题讨论】:

    标签: firebase react-native


    【解决方案1】:

    更新:从 Firebase 3.x 开始,Firebase 身份验证将正确地将用户保留在 React Native 应用程序中。

    啊,我没有意识到 React Native 没有 polyfill 本地存储。因此,如果我正确理解您的问题,那么使用 Firebase 的电子邮件/密码身份验证在 React Native 中可以正常工作,只是它不会在应用程序启动时持续存在,因此用户每次都必须登录。

    一种可能的解决方案是自己手动保存身份验证令牌。比如:

    1. 照常调用 authWithPassword(...)。
    2. 在 onComplete 处理程序中,检索 authData.authToken 并将其存储在本地(例如,使用 AsyncStorage)。
    3. 在下次应用启动时,从存储中检索身份验证令牌并调用 authWithCustomToken(authToken, ...)。

    我们将研究让 Firebase 自动执行此操作,但要做到这一点而不影响 Firebase 的其他消费者(除了响应)有点棘手。不过,我已将此添加到我们的内部错误数据库中,我们将看看我们能想出什么。当我们有解决方案时,我们会更新这个答案。谢谢!

    【讨论】:

    • 天才。欣赏它迈克尔!我会将任何发现发送给我,并且我会尝试使用它。
    • 是否有代码 sn-p/demo 来说明如何实现这一点?例如,我可以使用此链接作为参考 firebase.com/docs/web/guide/login/password.html 让用户身份验证在网络上工作,但是如何在不包含 firebase js 文件的情况下使其在本机反应中工作?
    • 这个问题已经解决了吗? firebase 会保留用户吗?
    • 还没有修复,抱歉。您仍然需要手动保留身份验证令牌。
    • 是否可以使用 react-native webview 进行社交登录?
    猜你喜欢
    • 2020-12-22
    • 2022-12-08
    • 2017-12-25
    • 2023-03-13
    • 2022-01-21
    • 2022-11-24
    • 1970-01-01
    • 2022-01-18
    • 2021-04-11
    相关资源
    最近更新 更多