使用OAuth令牌在Polymer中验证Firebase

时间:2015-11-19 10:25:54

标签: oauth firebase polymer firebase-authentication firebase-polymer

我有一个使用Google帐户进行身份验证的Firebase数据库。目前,我有一个<google-signin-aware>元素,其中详细说明了应用的登录详细信息,以便与Google登录API一起使用,并在登录时使用Google登录返回的访问令牌对Firebase参考进行身份验证。< / p>

从成功登录的<google-signin-aware>元素回调:

var ref = new Firebase("https://<myapp>.firebaseio.com");
var access_token = gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().access_token;
ref.authWithOAuthToken("google", access_token, function (error, authData){/*...*/});

为了尝试进一步与Polymer集成,我正在迁移到<firebase-auth>元素,这是“Firebase身份验证API的包装器”。但是,我找不到使用访问令牌进行身份验证的等效方法。 login()方法有两个参数,有没有办法将访问令牌提供给登录方法,以便Firebase使用此令牌而不是自己的弹出窗口进行身份验证?

2 个答案:

答案 0 :(得分:1)

<firebase-auth>元素有一个内部Firebase参考ref,您可以通过调用

来访问
var ref = document.querySelector('#fbauth').ref

然后正常验证

var access_token = gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().access_token;
ref.authWithOAuthToken("google", access_token, function (error, authData){/*...*/});

答案 1 :(得分:0)

您可能会对扩展Firebase Polymer元素集的自定义集感兴趣:https://github.com/MeTaNoV/firebase-element-extended