[英]Node.js http with mysql pooling quits unexpectedly on error
因此,今天早上我開始嘗試使用node.js,並能夠提供一個處理路徑請求的http服務,並可以通過池連接到mysql來處理多個事務。
如果我嘗試輸入錯誤的密碼,就會遇到問題,等節點進程意外退出。
var http = require("http");
var url = require("url");
var mysql = require('mysql');
var pool = mysql.createPool({
host : 'localhost',
user : 'root',
password : 'root',
database : 'test'
});
...
var pathname = url.parse(request.url).pathname;
var url_parts = url.parse(request.url, true);
var query = url_parts.query;
...
var table = query.table;
var sql = "SELECT * FROM " + table + "";
...
pool.getConnection(function(err, connection) {
console.log(err);
connection.on('error', function(err) {
console.log(err.code);
});
// Use the connection
connection.query(sql, function(err, rows) {
if (err) throw err;
console.log(rows);
response.writeHead(200, {
"Content-Type" : "application/json"
});
response.write(JSON.stringify(rows, null, 0));
connection.end();
response.end();
});
console.log(connection.sql);
console.log(connection.query);
});
感謝任何關於如何避免退出的幫助! 只是說該死的錯誤。
無論如何,在出現錯誤的情況下,我永遠使該node.js永不退出。
您使用throw err
,但不要在任何地方捕獲它,從而導致節點出現UncaughtException錯誤,從而關閉應用程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.