Node.js 错误:无法访问主机:";api.twilio.com“;
我正在使用node twilio,我不断收到一个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
“错误:无法访问主机:”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
这可能是由于您的internet连接
几分钟后,如果您有internet,请再试一次,它应该可以工作。您是否配置了帐户SID和authToken?请参阅本文档。如果可能的话,把你的代码发布到这里。我在获取无用的
“错误:无法访问主机:”api.twilio.com时遇到了类似的问题“
错误。我的诀窍是在调用request
的行中设置一个断点/path/to/root/dir/node\u modules/twilio/lib/Client.js
,然后检查err
对象