首页 > 解决方案 > nodejs mssql 连接 ETIMEDOUT

问题描述

此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。(拒绝编号:20)

这是来源:

// Database
exports.DEF_DB = {
    server          : '.1.1.1',
    database        : 'CA_SUPER_INFO',
    user                : 'user',
    password    : 'pass',
    port                : 1433,
    pool: {
        acquireTimeoutMillis: 15000
    }
};


exports.checkUserLogin = function ( data , callback ) {


    var conn = new sql.ConnectionPool(CONFIG.DEF_DB);

    conn.connect().then ( function () {

        var req = new sql.Request(conn);

        console.log("[socket] %j" , data);

        req.input ('c_key'      ,sql.VarChar(250)       ,data.com_key);
        req.input ('c_id'           ,sql.VarChar(30)        ,data.user_id);
        req.input ('c_pw'           ,sql.VarChar(30)        ,data.user_pw);
        req.input ('c_os'           ,sql.VarChar(30)        ,data.user_device);
        req.input ('c_ip'           ,sql.VarChar(16)        ,data.user_ip);
        req.input ('c_info'     ,sql.VarChar(250)       ,JSON.stringify(data));

        req.execute ("CA_SUPER_INFO.dbo.proc_api_user_login" , function ( err , recordsets ) {

            if(err){
                insertErr("proc_api_user_login" , err);
                callback(5);
            }else{
                callback(recordsets.recordset[0]);
            }
            conn.close();
        })

    }).catch(err => {
        console.log("proc_api_user_login");
    });
};

我根据这些文档进行了修改,但仍然遇到错误

标签: node.jssql-serverconnect

解决方案


推荐阅读