当前位置: 首页 > 知识库问答 >
问题:

链接到Firebase匿名认证,而不调用API

督俊雅
2023-03-14

我正在我的Firebase应用程序中创建匿名会话,以便在用户创建帐户之前保存他们的数据。我看到Firebase允许将Facebook登录链接到匿名帐户,这听起来非常简洁,但这个过程的一个警告似乎是,我必须自己获取Facebook令牌,而不是令人敬畏的Firebase API的温暖和舒适。考虑到Firebase似乎代表应用程序完成了大量登录流程,该API似乎奇怪地未开发

如何从帐户链接文档连接匿名帐户的代码示例:

var credential = firebase.auth.FacebookAuthProvider.credential(
    response.authResponse.accessToken);

当然,我想使用Firebase获取令牌的方式

var provider = new firebase.auth.FacebookAuthProvider();

firebase.auth().signInWithPopup(provider).then(function(result) {
     // result.token or whatever would appear here
});

但是如果我运行它,我将丢失我的匿名会话(和我的匿名用户ID,我们希望新的登录使用它)。

有没有办法在不登录用户并丢失我试图转换为可登录Facebook帐户的匿名会话的情况下从Firebase的身份验证机制中获取Facebook代币?(目标是不必自己调用Facebook API,特别是因为我也将在此处添加Google)

暂时还没有答案

 类似资料:
  • 将匿名帐户转换为永久帐户的文档指出了流程的3个步骤,但是步骤2似乎违反了步骤1。 当用户注册时,完成用户身份验证提供者的登录流程,直到(但不包括)调用其中一个身份验证提供者。用方法来表示。例如,获取用户的Google ID令牌、Facebook访问令牌或电子邮件地址和密码 获取新身份验证提供程序的身份验证凭据:

  • 在本章中,我们将匿名认证用户。 步骤1 - 启用匿名身份验证 这和我们以前的章节是一样的。需要打开Firebase信息中心,点击侧边菜单中的Auth和标签栏内的认证方法,需要启用匿名身份验证。 第2步 - 登录功能 可以使用方法进行此认证。 示例 让我们来看看下面的例子,参考示例代码 -

  • 于是我在这里看到:https://firebase . Google . com/docs/auth/web/account-linking # link-auth-provider-credentials-to-a-user-account现在可以在Firebase中链接用户账号了。我还看到Firebase提供了匿名认证的功能,它为一个用户创建一个用户会话,不需要任何凭证。 在我们的应用程序中,

  • 当使用Firebase身份验证匿名帐户时,它偶尔会在系统中创建一个新的用户ID,有时它会使用相同的用户ID。我真的希望每次都能创建相同的用户ID,这样匿名用户仍然可以在应用程序中维护相同的进度/数据。这实际上是我开始使用Firebase的原因。即使在重新启动应用程序等之后,我如何始终维护一个匿名帐户来保持相同的用户ID? 我希望用户每次以访客身份玩游戏时都能获得相同的ID。我看到有些应用程序在卸载

  • 使用Firebase,我可以使用电子邮件地址注册和登录用户。但是,如果我希望应用程序基于用户名怎么办?例如,您使用“Bobzilla”而不是“Bob@mail.com”登录? Firebase是否可以这样做?

  • 我有一个场景,我通过使用firebase身份验证通过匿名登录,并从匿名登录帐户,我已经从事件列表中添加了事件作为收藏夹项目,现在我想使用Google或Facebook登录,以便我最喜欢的项目永远不会丢失,每当我登录收藏夹项目必须从该登录帐户获得。 我正在使用上述场景Firebase链接。但问题是,firebase链接只对一个匿名帐户有效一次,如果我再次匿名登录并添加最喜欢的事件,现在我使用以前的方