簡體   English   中英

帶有mysql pooling的Node.js http因錯誤意外退出

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM