输入帐号,密码,从mysql比对,正确的话定向到home页.
database.js:
var mysql = require('mysql');
var config = require('../config/config');
var pool = mysql.createPool(config.mysql_dev);
var query=function(sql,callback){
pool.getConnection(function(err,conn){
if(err) console.log("POOL ==> " + err);
else{
conn.query(sql,function(qerr,vals,fields){
//释放连接
conn.release();
//事件驱动回调
callback(qerr,vals,fields);
});
}
});
};
module.exports=query;
index.js:
router.post('/login',function(req,res){
var query = require('../modules/database');
query("select * from managers where ManagerID =10001",function(err,vals,fields){
if(req.body.password==="admin")
{
res.redirect('/home');
}
res.send('ID或密码错误!');
});
});
总是报错:
/opt/workspace/project/nodejs-demo/node_modules/mysql/lib/protocol/Parser.js:77
throw err; // Rethrow non-MySQL errors
^
Error: Can't set headers after they are sent.
at ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:344:11)
at ServerResponse.header (/opt/workspace/project/nodejs-demo/node_modules/express/lib/response.js:718:10)
at ServerResponse.send (/opt/workspace/project/nodejs-demo/node_modules/express/lib/response.js:163:12)
at /opt/workspace/project/nodejs-demo/routes/index.js:40:7
at Query._callback (/opt/workspace/project/nodejs-demo/modules/database.js:16:17)
at Query.Sequence.end (/opt/workspace/project/nodejs-demo/node_modules/mysql/lib/protocol/sequences/Sequence.js:96:24)
at Query._handleFinalResultPacket (/opt/workspace/project/nodejs-demo/node_modules/mysql/lib/protocol/sequences/Query.js:144:8)
at Query.EofPacket (/opt/workspace/project/nodejs-demo/node_modules/mysql/lib/protocol/sequences/Query.js:128:8)
at Protocol._parsePacket (/opt/workspace/project/nodejs-demo/node_modules/mysql/lib/protocol/Protocol.js:280:23)
at Parser.write (/opt/workspace/project/nodejs-demo/node_modules/mysql/lib/protocol/Parser.js:73:12)
不知道哪里出了问题?如果代码哪里不清楚我可以再追加。
redirect之后就不要send了