DNS错误未使用NodeJS和mssql更新数据库中的查询

时间:2018-08-13 15:45:18

标签: javascript sql-server node.js request

所以我想遍历数据库中的索引或URL和GET请求,以查看服务器是否在线。我想在每次碰到端点时更新响应,但是这样做很麻烦。

获取错误:

  

获取错误:{错误:getaddrinfo ENOTFOUND   https://jsonplaceholder.typicode.com/todos/1   https://jsonplaceholder.typicode.com/todos/1:80       在GetAddrInfoReqWrap.onlookup [未完成时](dns.js:56:26)errno:'ENOTFOUND',代码:'ENOTFOUND',系统调用:'getaddrinfo',
  主机名:“ https://jsonplaceholder.typicode.com/todos/1”,主机:   'https://jsonplaceholder.typicode.com/todos/1',端口:80}

我正在NodeJS上运行MSSQL。代码部分如下:

    sql.connect(config, function (err) {
        if (err) console.log(err);
        // create Request object
        var request = new sql.Request();
        // query to the database and get the records
        request.query('select * from Ws_ServiceList', function (err, recordset) {
            if (err) console.log(err);
            // send records as a response
            res.send(recordset);
            for (index = 0; index < 5; index++) {
                //console.log('index number for the loop is:%d', index);
                let endpointURL = recordset.recordset.recordset[index].URL;
                http.get({
                    hostname: recordset.recordset[index].URL,
                    path: '/',
                    method: 'get',
                    agent: false
                }, (res) => {
                    console.log('the urls are:', endpointURL);

                    //if (error && res.statusCode != 200) {
                    //let serviceStatus = res.request.;
                        // Update the database
                let query = `UPDATE Ws_ServiceList SET Response = 200 WHERE URL = ${endpointURL}`
                        request.query(query);
                        console.log(query);
                    //} else {
                    //    console.log(query);
                    //}

                }).on("error", (err) => {
                    console.log("get error:", err);
                });
            };
        });
    })
});

有人知道原因吗?谢谢!

0 个答案:

没有答案