node-mysql は connection.end() が行く場所
node.js sockets (2)
私は本当にnode-mysqlでconnection.end()を使用することと混同しています。
私はそれがどこに行くのか完全に理解していない、現時点では私はクエリの後にそれを置くが、その後私は新しいクエリを作成した場合私はエラーが表示されCannot enqueue Query after invoking quit.
今、私のアプリはここに行くチェックの束を持っていますそれらの一つです:
socket.on('connect', function(data,callBack){
var session = sanitize(data['session']).escape();
var query = connection.query('SELECT uid FROM sessions WHERE id = ?', [session],
function(err,results){
if(err){
console.log('Oh No! '+err);
}else{
io.sockets.socket(socket.id).emit('connectConfirm',{data : true});
}
connection.end();
});
});
それ以降、他のクエリがある場合は、エラーが発生します。
私は私のjsFiddleでより多くの情報に基づいた説明をしました: http://jsfiddle.net/K2FBk/ ://jsfiddle.net/K2FBk/は私が得ている問題をよりよく説明するために。 node-mysqlのドキュメントはconnection.end()
を置くための正しい場所を完全には説明していません
このエラーを回避するためにどこに行けばよいですか。
https://ffff65535.com
socket.on('connect', function(data,callBack){
var session = sanitize(data['session']).escape();
var query = connection.query('SELECT uid FROM sessions WHERE id = ?', [session],
function(err,results){
if(err){
console.log('Oh No! '+err);
}else{
io.sockets.socket(socket.id).emit('connectConfirm',{data : true});
}
});
connection.end(); // close connection outside the callback
});
エンキュー中に接続を閉じているため、エラーが発生しています