firebase - 如何在 Firebase 3.0 中的应用程序之间共享身份验证 token ?

标签 firebase firebase-realtime-database firebase-authentication

在旧版本的 Firebase 中,我们可以获得经过身份验证的 token ,以便在我们的应用程序、扩展程序之间共享。

但是当升级到 Firebase 3.0 时,该功能不再起作用。
我已经在 FIRUser 上使用了 getTokenWithCompletion:,然后在我的 App Extension 中,我使用我刚刚获得的 token 调用了 signInWithCustomToken:completion: 。但 Firebase 返回一个带有消息的错误:

Error Domain=FIRAuthErrorDomain Code=17000 "The custom token format is incorrect. Please check the documentation." UserInfo=0x799b6010 {error_name=ERROR_INVALID_CUSTOM_TOKEN, NSLocalizedDescription=The custom token format is incorrect. Please check the documentation.}



如何从 FIRUser 获取身份验证 token 以在我的应用程序扩展中重新对其进行身份验证?

最佳答案

signInWithCustomToken旨在与在您自己的服务器上类型转换的您自己的 token 一起使用(阅读更多 here)。

在应用程序的不同组件之间引导 session 的最佳方式是在登录时共享用户的凭据并在所有组件之间执行引导。

例如,如果您使用 Facebook login ,当您检索 facebook 访问 token 时,您必须将它从您的应用程序共享到您的扩展程序,然后在主应用程序和扩展程序中使用相同的 token 调用 signInWithCredential。

目前无法使用来自另一个 Firebase 应用实例的 v3.X SDK 将用户登录到 Firebase 应用。

关于firebase - 如何在 Firebase 3.0 中的应用程序之间共享身份验证 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37337714/

相关文章:

mySQL权威数据库——结合Firebase

swift - 使用 Swift 注册 Firebase

swift - Firebase 电子邮件/密码身份验证 + 验证怪异

firebase - 实时数据库 Firebase "All or nothing"事务

java.lang.IllegalArgumentException : attempt to remove OnFrameMetricsAvailableListener that was never added

firebase - 在 Cloud Functions for Firebase 中访问数据库数据

javascript - 如何一次将一堆数据推送到firebase数据库中

java - 在列表中添加来自 firebase 的对象的问题

firebase - 尽管用户凭据错误,登录仍然有效

reactjs - 使用 useEffect 与 onAuthStateChanged 检测 Firebase 用户更改 - 有什么区别?