无法捕获Node.js中的节点请求引发的AssertionError

时间:2018-12-24 09:45:11

标签: javascript node.js node-request

我运行一个脚本,该脚本调用带有节点请求的特定URL。有时它可以工作,但大多数情况下会引发一个我无法捕获的AssertionError。

脚本崩溃,出现以下错误:

  

Dez 24 10:18:29 x server.js [21637]:assert.js:86

     

Dez 24 10:18:29 x server.js [21637]:抛出新的AssertionError(obj);

     

Dez 24 10:18:29 x server.js [21637]:^

     

Dez 24 10:18:29 x systemd [1]:x.service:主进程已退出,代码=已退出,状态= 1 /失败

     

Dez 24 10:18:29 x systemd [1]:x.service:设备进入故障状态。

     

Dez 24 10:18:29 x systemd [1]:x.service:失败,返回结果为“退出代码”。

     

Dez 24 10:18:29 x systemd [1]:x.service:服务延期超时,计划重新启动。

这是代码段:

const defReq = require('request');
[...]
async call(data) {
    let options = {};

    options.url = data.url;
    options.headers = {
        'User-Agent': (data.useragent ? data.useragent : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36")
    };

    if(preisanfrage.proxy){
        options.proxy = 'http://'+encodeURIComponent(data.proxy.user)+':'+(data.proxy.password)+'@'+(data.proxy.url);
    }

    try{
        await defReq(options, function (error, response, body) {
            console.log(body);
        });
    }catch(ex){
        console.log(ex);
    }
}

为什么我无法捕获此错误?

圣诞快乐!

0 个答案:

没有答案