javascript - 节点js会话销毁不重定向
问题描述
我正在编写登录系统,但是当我单击注销按钮时,网站正在打开同一页面。
<form action="out" method="POST">
<button type="submit" class="dropdown-item py-3 pr-5">logout</button>
</form>
server.js:
app.post('/out', function(request, response) {
request.session.destroy();
response.redirect('/');
});
app.get('/', function(request, response) {
if (request.session.loggedin) {
response.sendFile(path.join(__dirname + '/public/chat.html'));
} else {
response.sendFile(path.join(__dirname + '/public/index.html'));
}
});
网站每次打开chat.html但如果我完全刷新网站,网站打开index.html。
解决方案
app.post('/out', function(request, response) {
request.session.destroy(err => {
if(err) {
console.log(err)
}else{
response.redirect('/signup');
}
});
});
你可以试试这个。首先销毁会话,然后在其中调用回调函数检查销毁会话是否有任何问题,如果没有则重定向
推荐阅读
- amazon-web-services - 具有服务相关角色的基于标签的访问控制
- mongodb - 如何在 mongodb 中执行 $push 时设置字段类型
- php - 如何在 Laravel 中进行动态文章建议?
- reactjs - 使用 api 调用在 useEffect 中未发生状态更新
- java - 如何在不使用 Spring Boot 的情况下将 Github Secrets 读入 application.properties?
- javascript - 不能在模块外使用 import 语句(nodeJs)
- javascript - 悬停在移动设备上无法在我的 Shopify Carousel 上运行
- mysql - 过滤多对多关系
- java - 安卓。如何在 GridLayoutManager 的列之间设置不同的间距
- python - 使用 pytorch 在 GPU 上展开相位