Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 错误:无法访问主机:";api.twilio.com“;_Node.js_Twilio - Fatal编程技术网

Node.js 错误:无法访问主机:";api.twilio.com“;

Node.js 错误:无法访问主机:";api.twilio.com“;,node.js,twilio,Node.js,Twilio,我正在使用node twilio,我不断收到一个“错误:无法访问主机:”api.twilio.com“。我们通过mtr检查了数据包,它们正在访问api.twilio.com。在GCE的debian上运行。经过几天的挖掘,发现node twilio模块错误地显示了许多错误,如: 错误:无法访问主机:“api.twilio.com” 以下几行: var error = null; if (err || (response && (response.statusCode < 20

我正在使用node twilio,我不断收到一个
“错误:无法访问主机:”api.twilio.com“
。我们通过
mtr
检查了数据包,它们正在访问api.twilio.com。在GCE的debian上运行。

经过几天的挖掘,发现node twilio模块错误地显示了许多错误,如:

错误:无法访问主机:“api.twilio.com”

以下几行:

var error = null;
if (err || (response && (response.statusCode < 200 || response.statusCode > 206))) {
    error = {};
    // response is null if server is unreachable
    if (response) {
        error.status = response.statusCode;
        error.message = data ? data.message : 'Unable to complete HTTP request';
        error.code = data && data.code;
        error.moreInfo = data && data.more_info;
    } else {
        error.status = err.code;
        error.message = 'Unable to reach host: "'+client.host+'"';
    }
}
var错误=null;
if(err | |(response&(response.statusCode<200 | | response.statusCode>206))){
错误={};
//如果无法访问服务器,则响应为null
如果(答复){
error.status=response.statusCode;
error.message=data?data.message:“无法完成HTTP请求”;
error.code=data&&data.code;
error.moreInfo=data&&data.more\u info;
}否则{
error.status=err.code;
error.message='无法访问主机:“'+client.host+'”;
}
}
发生这种情况的原因是,链中有一个自签名证书,而基础模块twilio依赖于is,这会引发以下错误:
Error:SELF\u SIGNED\u CERT\u IN\u CHAIN
但这不是节点twilio引发的错误(错误传播错误)

有两个修复程序:

1.通过设置告诉nodejs忽略链中的自签名证书:

export NODE\u TLS\u REJECT\u UNAUTHORIZED=0

  • 查找自签名证书并将其从链中删除。下面是一个使用openssl的示例:
  • 参考资料:


    这可能是由于您的internet连接


    几分钟后,如果您有internet,请再试一次,它应该可以工作。

    您是否配置了帐户SID和authToken?请参阅本文档。如果可能的话,把你的代码发布到这里。我在获取无用的
    “错误:无法访问主机:”api.twilio.com时遇到了类似的问题“
    错误。我的诀窍是在调用
    request
    的行中设置一个断点
    /path/to/root/dir/node\u modules/twilio/lib/Client.js
    ,然后检查
    err
    对象