0
我是node.js的新手。当用户登录并在用户注销时结束会话时应如何启动会话?如何在用户登录时启动会话并在用户注销时结束会话
请注意,这个应用程序的环境:
- 我使用Windows
- NPM,快速
- MySQL的节点
这是我的app.js文件:
var express = require('express');
var routes = require('./routes');
var http = require('http');
var path = require('path');
var customers = require('./routes/customers');
var app = express();
var connection = require('express-myconnection');
var mysql = require('mysql');
app.set('port', process.env.PORT || 4300);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(express.static(path.join(__dirname, 'public')));
if ('development' == app.get('env')) {
app.use(express.errorHandler());
}
app.use(
connection(mysql,{
host: 'localhost',
user: 'root',
password : '',
//port : 3306, //port mysql
database:'nodejs'
},'pool') //or single
);
app.get('/', customers.login);
app.get('/login', customers.login);
app.post('/login', customers.checklogin);
app.get('/logout', customers.logout);
app.use(app.router);
http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});
这是常规g文件(customers.js):
exports.logout = function(req, res){
var messages = '';
res.render('login',{page_title:"Login",message: messages});
};
exports.checklogin = function(req,res){
var loginInput = JSON.parse(JSON.stringify(req.body));
req.getConnection(function (err, connection) {
var username = loginInput.username;
var pswd = loginInput.pswd;
var query = connection.query("SELECT * FROM users WHERE username = ? AND pswd = ? ",[username,pswd], function(err,rows)
{
var messages = 'Username/Password is wrong. Try again.';
res.render('login',{page_title:"Login",message: messages});
});
});
};