【发布时间】:2013-12-30 22:49:57
【问题描述】:
我想使用 socket.io 从 node.js 查询 mySQL DB, 尽可能模块化的最佳方法是什么?
这是我到目前为止所做的:(它工作正常,但有更好的方法吗?)
var app = require('http').createServer(handler)
, io = require('socket.io').listen(app)
, mysql = require('mysql')
, http = require('http');
var query = "SELECT * FROM table";
app.listen(88);
io.sockets.on('connection', function (socket)
{
socket.on('queryReq', function(){queryFunc(query, socket);
});
function queryFunc(query, socket){
var connection = mysql.createConnection({
host : 'localhost',
user : 'admin',
password : '1234'
});
connection.query(query, function(err, rows){
if(err != null) {
socket.emit("DBnews", "Error in Query: " + err);
}else{// Shows the results:
for (var i=0; i<rows.length; i++){
console.log(rows[i]);
socket.emit("DBnews", '\n'+JSON.stringify(rows[i]));
}
}
connection.end();// Close connection
console.log("Disconnected!");
});
}
【问题讨论】:
-
这个问题似乎是题外话,因为它是关于code review