Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用Node.js中的会话创建登录_Javascript_Node.js_Session_Authentication_Server - Fatal编程技术网

Javascript 如何使用Node.js中的会话创建登录

Javascript 如何使用Node.js中的会话创建登录,javascript,node.js,session,authentication,server,Javascript,Node.js,Session,Authentication,Server,几天来我一直在寻找答案,但似乎找不到适合我需要的答案。我想用node.js创建一个登录页面,并在其中添加一个会话,这样当用户关闭选项卡并返回时,他必须再次登录。以下是我的server.js代码: var express = require('express'), app = express(), server = require('http').Server(app), io = require('socket.io')(server), port = p

几天来我一直在寻找答案,但似乎找不到适合我需要的答案。我想用node.js创建一个登录页面,并在其中添加一个会话,这样当用户关闭选项卡并返回时,他必须再次登录。以下是我的server.js代码:

    var express = require('express'),
    app = express(),
    server = require('http').Server(app),
    io = require('socket.io')(server),
    port = process.env.PORT || 1337,
    mysql = require('mysql'),
    pool = mysql.createPool({
        host: '127.0.0.1',
        port: '8889',
        user: 'root',
        password: 'root',
        database: 'admin'
    });

app.use(express.static('public'));
server.listen(port);

app.get('/', function (req, res) {
  res.sendfile(__dirname + '../public/index.html');
});

io.sockets.on('connection', function (socket) {

    console.log('Un client est connecté !');

    socket.on('auth', function (data) {

        console.log(data);

        pool.getConnection(function (err, connection) {

            connection.query({
              sql: 'SELECT * FROM `users`',
              timeout: 40000 // 40s
            }, function (error, results, fields, rows) {

                for (var i = 0; i < results.length; i++) {
                    if(data.username == results[i].name && data.password == results[i].pass) {
                            console.log('*------- USER IS AUTHED  -------*');
                    };
                };

            });

        });

    });
});
基本上,我在public/index.html上有一个表单,它通过js将数据发送到服务器socket。在'auth'上,在服务器上获取数据,然后我将数据与数据库进行比较。如果它匹配I log----用户已授权---。我现在想创建一个会话,使其安全

对不起,我的英语很蹩脚,我希望你们能理解我的意思。
提前感谢

会话并不能保证它的安全性,但有可用的中间件,比如是的,我见过这些,但出于某种原因,我似乎无法使它与我的代码一起工作。。你能帮我吗?