Javascript Firebase身份验证未检测到登录用户
问题是: 我无法使用Javascript Firebase身份验证未检测到登录用户,javascript,firebase,google-app-engine,firebase-authentication,Javascript,Firebase,Google App Engine,Firebase Authentication,问题是: 我无法使用firebase.auth()访问用户对象。currentUser 情况: 帐户创建和登录使用。身份验证后,用户将重定向到其特定于帐户的页面。在呈现每个页面并将其提供给经过身份验证的用户之前,在服务器端验证用户cookie,以确保提供正确的用户内容,并且不会发生未经授权的访问。但是,当访问需要使用javascript访问用户对象的用户配置文件页面时,我只得到一个空对象。此外,控制台会记录“用户未登录”并为用户记录“null” 问题是: 如何访问用户对象?我是不是装错东西了?还
firebase.auth()访问用户对象。currentUser
情况:
帐户创建和登录使用。身份验证后,用户将重定向到其特定于帐户的页面。在呈现每个页面并将其提供给经过身份验证的用户之前,在服务器端验证用户cookie,以确保提供正确的用户内容,并且不会发生未经授权的访问。但是,当访问需要使用javascript访问用户对象的用户配置文件页面时,我只得到一个空对象。此外,控制台会记录“用户未登录”并为用户记录“null”
问题是:
如何访问用户对象?我是不是装错东西了?还有什么我需要检查或再检查的吗
html页面:
//您的web应用程序的Firebase配置
var firebaseConfig={
apiKey:“我的apiKey”,
authDomain:“MyAuthDomain”,
databaseURL:“myDatabaseURL”,
projectId:“myProjectId”,
storageBucket:“myStorageBucket”,
messagingSenderId:“myMessagingSenderId”,
appId:“myAppId”
};
//初始化Firebase
firebase.initializeApp(firebaseConfig);
$(文档).ready(函数(){
firebase.auth().onAuthStateChanged(函数(用户){
如果(用户){
//用户已登录。
console.log(“用户已登录”);
}否则{
//没有用户登录。
//用户得到
console.log(“用户未登录”);
}
});
var user=firebase.auth().currentUser;
console.log(用户);
//日志“空”
//修订的附加代码
})
您正在进行一场比赛。您将两个firebase脚本都放在正文中。第二个是侦听文档就绪
,在连接到firebase.auth()
之前可能会触发该命令
我会将两者都放在监听器中,或者通过
中的脚本连接,或者将它们放在一个
标记下的
中,并创建一个读取标志
尝试此操作(仍在等待文档准备就绪):
你正在进行一场比赛。您将两个firebase脚本都放在正文中。第二个是侦听
文档就绪
,在连接到firebase.auth()
之前可能会触发该命令
我会将两者都放在监听器中,或者通过
中的脚本连接,或者将它们放在一个
标记下的
中,并创建一个读取标志
尝试此操作(仍在等待文档准备就绪):
感谢您的回答,我尝试使用这两种解决方案,但是,我仍然无法获得用户对象。我猜我的代码中可能有一个更复杂的问题需要解决。我只是通过ajax请求进行服务器端用户验证来解决这个问题。再次感谢您花时间回答。如果它解决了您的问题,您应该为后代接受答案。不幸的是,它无法解决问题。我确实对你的答案投了赞成票。我的猜测是,我的问题可能还没有得到充分的解决,因为它在堆栈溢出格式中得到了回答。谢谢你的回答,我尝试使用这两种解决方案,但是,我仍然无法获得用户对象。我猜我的代码中可能有一个更复杂的问题需要解决。我只是通过ajax请求进行服务器端用户验证来解决这个问题。再次感谢您花时间回答。如果它解决了您的问题,您应该为后代接受答案。不幸的是,它无法解决问题。我确实对你的答案投了赞成票。我的猜测是,我的问题可能还没有被充分地缩小,以便以堆栈溢出格式来回答
<body>
<script>
$(document).ready(function(){
// Your web app's Firebase configuration
var firebaseConfig = {
apiKey: "MyApiKey",
authDomain: "MyAuthDomain",
databaseURL: "myDatabaseURL",
projectId: "myProjectId",
storageBucket: "myStorageBucket",
messagingSenderId: "myMessagingSenderId",
appId: "myAppId"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
// User is signed in.
console.log("user is signed in");
} else {
// No user is signed in.
// The user gets
console.log("user is NOT signed in");
}
});
var user = firebase.auth().currentUser;
console.log(user);
//logs 'null'
// additional code redacted
})
</script>
<head>
<script>
$(document).ready(function(){
// Your web app's Firebase configuration
var firebaseConfig = {
apiKey: "MyApiKey",
authDomain: "MyAuthDomain",
databaseURL: "myDatabaseURL",
projectId: "myProjectId",
storageBucket: "myStorageBucket",
messagingSenderId: "myMessagingSenderId",
appId: "myAppId"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
</script>
</head>
<body>
<script>
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
// User is signed in.
console.log("user is signed in");
} else {
// No user is signed in.
// The user gets
console.log("user is NOT signed in");
}
});
var user = firebase.auth().currentUser;
console.log(user);
//logs 'null'
// additional code redacted
})
</script>