var cred = firebase.auth.FacebookAuthProvider.credential(fbAccessToken);
firebase.auth().signInWithCredential(cred).then(function(user) {
// User is obtained here.
// To get refresh token:
// user.refreshToken
// To get ID token:
return user.getIdToken().then(function(idToken) {
// ...
})
}).catch(function(error) {
});
1 回答
如果您使用带有HTTP触发器的Firebase函数,则可以使用firebase.js客户端node.js库对用户进行身份验证并在REST API中返回Firbease令牌 . 您可以将Facebook Access令牌发送到该HTTP endpoints ,使用node.js客户端库使用
signInWithCredential
登录用户,并返回ID令牌和刷新令牌 .如果要使用REST API:
这将返回Firebase ID令牌和刷新令牌:
这就是Firebase Auth会话所需的全部内容 .
要构造用户,请使用ID令牌调用以下API:
这将返回用户和相关的数据:
要在ID令牌过期后刷新它,请使用返回的刷新令牌:使用REST API:
这将返回一个新的ID令牌和刷新令牌:
要在后端使用客户端库:
var firebase = require('firebase');
您将FB访问令牌从客户端发送到HTTP endpoints 并使用它登录: