javascript - Firebase 重新验证社交提供商

标签 javascript firebase firebase-authentication

firebase reauthenticate 方法需要 credential 对象,例如:

const token = await firebase.auth.currentUser.getToken();
const credential = firebase.auth.FacebookAuthProvider.credential(token);

如果我尝试重新验证,我会收到 accessToken 无效的错误消息

firebase.auth.currentUser.reauthenticate(credential);

错误:

code:"auth/internal-error"

{"domain":"global","reason":"invalid","message":"invalid access_token, error code 43."}

最佳答案

您需要使用 Facebook 访问 token 而不是 Firebase ID token 。 firebase.auth.currentUser.getToken(); 返回 Firebase ID token 。

初始化 facebook 身份验证凭证时,您需要传递 facebook 访问 token 。

const credential = firebase.auth.FacebookAuthProvider.credential(facebookAccessToken);

为了重新验证社交提供商的身份,您可以执行以下操作: Firebase: recent login requested

关于javascript - Firebase 重新验证社交提供商,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42202403/

相关文章:

swift - 如何检测观察者何时完成 Firebase

firebase - 软件包 cloud_firestore 没有匹配 >=0.7.0 <0.8.0 的版本

javascript - Angular-Firebase 如何在 Angular Firebase 注册期间存储其他字段?

reactjs - Expo 应用程序中的 Firebase 无密码电子邮件身份验证错误

Android Firebase 电子邮件和密码身份验证不起作用

javascript - 菜单栏不显示在 window.open for Mozilla Firefox

javascript - 使用另一个对象的 init 函数创建新对象

javascript - 通过单击同一行中存在的删除链接来删除特定行

firebase - 使用 Firebase 的 Twitter 简单登录获取用户电子邮件地址

javascript - 收到 200 响应,但还有 CORS 错误?