连接 ETIMEDOUT Node.js
Posted
技术标签:
【中文标题】连接 ETIMEDOUT Node.js【英文标题】:connect ETIMEDOUT Node.js 【发布时间】:2018-04-25 19:46:18 【问题描述】:我在我的Auth0 Delegated Administration Extension 中使用create hook
。
触发创建钩子时出现此错误:
Error: connect ETIMEDOUT xxx.xxx.xxx.xxx:8081
at Object.exports._errnoException (util.js:1020:11)
at exports._exceptionWithHostPort (util.js:1043:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1090:14)
创建Hook函数是:
function(ctx, callback)
var request = require('request');
// Perform any asynchronous actions
var API_URL = "https://example.com:8081/api/saveData";
var empFirstName = 'Jhone';
var empId = '123';
request.post(
url: API_URL,
json:
firstName: empFirstName,
userId: empId
,
function(error, response, body)
if (error)
ctx.log('Create failed to '+API_URL+':', error);
return callback(new Error('Something went wrong. Please try again.'));
ctx.log('Create successful! Server responded with:', body);
return callback(null,
/*some data here*/
);
);
我已尝试使用postman,它按预期工作。但是使用 create 钩子,我遇到了错误。
可能是什么问题?
【问题讨论】:
你的回调是什么样的? 用邮递员试试看有没有响应? @SelloMkantjwa 这甚至没有命中服务器。我添加了控制台登录端点,它从未被打印出来。 @NidhinDavid 是的。我试过邮递员,它的工作。 只是为了确认,所以实际失败的调用是对“example.com:8081/api/saveData”的调用,而对同一端点的调用在邮递员中工作正常? 【参考方案1】:您的端点似乎不可用或没有响应。
您确定此端点处理 content-type: application/json 吗?否则尝试将其作为 x-form-www-urlencoded 发送。
request.post(
url: MY_URL,
form:
firstName: empFirstName,
userId: empId
【讨论】:
这个也不行以上是关于连接 ETIMEDOUT Node.js的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 java.net.ConnectException:无法连接到 /10.0.2.2(端口 8080):连接失败:ETIMEDOUT(连接超时)
当 URL 在浏览器中工作时,啥可能导致“连接 ETIMEDOUT”错误?
NodeJS:MySQL 有时会引发 ETIMEDOUT 错误
npm ERR! code ETIMEDOUT npm ERR! syscall connect npm ERR! errno ETIMEDOUT npm ERR! network reques...