我有一个拥有多个页面并使用Firebase作为后端的网站。我已经为登录实现了firebase auth,并且我了解使用onAuthChangeState的知识。现在的问题是我试图找到一种方法来阻止用户在没有登录页面的情况下访问其他页面。我想在php中使用某种类似于“会话或令牌”的方式,作为用户访问页面的键。笔记!我没有使用php,因为我还将Firebase用作托管我的网站的一种方式。顺便说一句,我看到的大多数资源都只使用一个页面,并且使用了很多style.display =“ none or block”,我不想走这条路,因为我希望在此基础上更加有条理并有适当的管理代码隔离条款。这就是为什么我有多个页面,例如;Login.html,Page2.html。
我知道如何使用javascript重定向
firebase.auth().onAuthStateChanged(firebaseUser => {
if(firebaseUser){
window.location.href = "page2.html";
}else{
window.location.href = "page1.html";
}
});
但是用户可以只输入https://mysite.firebaseapp.com/page2.html并访问它。这就是我要防止的。
如果我对您的理解正确,则需要检查用户是否已登录。如果用户已登录,则要显示页面,如果用户未登录,则要将其重定向到登录页面。如果我理解您的意思不对,请纠正我,但我将举一个例子说明上述情况。
该代码必须放置在您不允许用户未经登录就无法访问的每个页面上。
firebase.auth().onAuthStateChanged(function(user) {
if(user) {
//Here you can place the code that you want to run if the user is logged in
} else {
window.location.href = "login.html";
}
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句