节点JS会话销毁不重定向

时间:2020-01-26 06:39:19

标签: javascript node.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。

1 个答案:

答案 0 :(得分:2)

app.post('/out', function(request, response) {
    request.session.destroy(err => {
        if(err) {
             console.log(err)
         }else{
             response.redirect('/signup');
         }
    });
});

U可以尝试这个。首先销毁会话,然后在其中调用回调函数,检查销毁会话是否存在问题(如果没有,则重定向