如何通过id注销用户

时间:2017-05-12 19:53:45

标签: node.js express passport.js

我正在尝试通过其他用户注销用户(包含所有当前会话),因此例如管理员可以通过API调用强制注销用户。这是我目前的代码:

function logoutUserGlobal(req,res) {
    var user = req.user,
        userid = req.params.id;

    if(user.role == "admin"){
        connection.query("DELETE FROM `sessions` WHERE `sessions`.`session` LIKE '%\"user\":" + userid  + "%'", function (error, results, fields) {
            if (error) throw error;
            console.log(results);
            var response = {success: "test"}
            res.send(response).status(200).end();
        });
    }else{
        var response = {error: "not permitted"}
        res.send(response).status(200).end();
    } 
}

存储在数据库中的会话将被删除,但用户仍以某种方式登录,如果用户在页面上导航,会话将再次存储在数据库中。

提前致谢,祝周末愉快!

0 个答案:

没有答案