如果基于密码的身份验证用户尚未使用custom email action handlers验证其电子邮件地址,如何处理用户会话?
具体来说,我的Web应用程序右上角有一个芯片,显示已登录用户的var myAppName = (function() {
var pub = {};
pub.doc = document;
var doc = pub.doc;
pub.email;
pub.displayName;
pub.photoUrl;
pub.uid;
pub.validUser = false;
firebase.auth().onAuthStateChanged(function(user) {
pub.loadUserVariables();
if (user) {
var provider = firebase.auth().currentUser.providerData[0].providerId;
var verified = firebase.auth().currentUser.emailVerified;
switch(provider) {
case 'facebook':
pub.validUser = true;
break;
case 'github':
pub.validUser = true;
break;
case 'google':
pub.validUser = true;
break;
case 'password':
if(verified){
pub.validUser = true;
}
break;
case 'twitter':
pub.validUser = true;
break;
//var isAnonymous = user.isAnonymous;
}
//window.location ='/';
pub.putNewUser();
} else {
//window.location ='/login';
}
});
//API
return pub;
}());
。在我的应用程序逻辑中处理未经验证的已登录用户是没有问题的,除非他们在技术上已登录并需要退出方式。
显示退出按钮有点误导bcs他们没有权限,直到他们的电子邮件被验证。显示“访客”似乎也很奇怪。
我该如何处理这种情况?
{{1}}