使用Google身份验证从Polymer firebase-auth元素获取电子邮件地址

时间:2015-07-20 13:48:42

标签: firebase polymer firebase-security firebasesimplelogin

使用Firebase Auth我想从Google登录中获取电子邮件地址,因此我需要范围电子邮件。如何将其添加到firebase-auth元素?它是否在params?如果是这样,怎么样?一个例子就是很棒。

帮助我的一个开发人员创建了一个具有登录名

的Polymer Element

https://github.com/HackITtoday/hi9-login/blob/master/hi9-login.html

谢谢

2 个答案:

答案 0 :(得分:2)

可以通过调用<firebase-auth> less 公共API中的一个来完成。

<firebase-auth
    id="auth"
    provider="{{provider}}"
    app-name="[[appName]]"
    signed-in="{{signedIn}}"
    user="{{user}}"
    on-error="onAuthError"></firebase-auth>

在元素的聚合物定义中......

// Currently supported providers are 'google', 'facebook', 'github', 'twitter'
loginUsingProvider: function(name) {
    var provider = this.$.auth._providerFromName(name);
    // Twitter simple login doesn't have scopes.
    if (name != 'twitter') {
        provider.addScope('email');
    }
    this.$.auth.signInWithPopup(provider)
        .then(function(response) {
            // success
        }, function(error) {
            // failure
        })
        .catch(function(exception) {
            // Exception 
        });
}

这是使用polymerfire版本0.9.4完成的。使用bower install polymerfire)检查您的版本。

答案 1 :(得分:0)

根据文档here,有一个名为user的对象属性:

  

登录后,此属性将反映firebase用户身份验证对象。

这应该包含您需要的信息。