Javascript 节点获取连接ETIMEDOUT错误
我试图得到200个状态码作为回应,但结果是它被删除了。 我不明白,我怎么可能通过邮递员获取成功的响应,但通过节点获取始终使用ETIMEDOUT进行响应。 下面是一个代码示例:Javascript 节点获取连接ETIMEDOUT错误,javascript,node.js,node-fetch,Javascript,Node.js,Node Fetch,我试图得到200个状态码作为回应,但结果是它被删除了。 我不明白,我怎么可能通过邮递员获取成功的响应,但通过节点获取始终使用ETIMEDOUT进行响应。 下面是一个代码示例: const Resource = { get: cb => { fetch('https://example.com', { method: 'POST', headers: {'Content-Type': 'application/x-www-form-urlencoded'}
const Resource = {
get: cb => {
fetch('https://example.com', {
method: 'POST',
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
body: {...some body...},
}).then(res => {
if (res.status !== 200) cb(`Status: ${res.status}, ${res.statusText}`)
return res.text()
}).then(data => {
cb(null, data)
}).catch((err) => {
console.log('ERROR: ', err)
})
}
}
以下是回应:
错误:{FetchError:请求https://example.com 失败,原因:连接ETIMEDOUT
在ClientRequest。(C:\Users\projects\DSSRQ\node\u modules\node fetch\lib\index.js:1393:11)
在emitOne(events.js:116:13)
在ClientRequest.emit(events.js:211:7)
在TLSSocket.socketErrorListener(_http_client.js:387:9)
在emitOne(events.js:116:13)
在TLSSocket.emit(events.js:211:7)
发出错误时(内部/streams/destroy.js:64:8)
at _combinedTickCallback(内部/流程/下一步_tick.js:138:11)
在进程中。_tick回调(内部/process/next_tick.js:180:9)
信息:'请求https://example.com 失败,原因:连接ETIMEDOUT',
键入:“系统”,
errno:“ETIMEDOUT”,
代码:'ETIMEDOUT'}
这看起来是因为代理限制。您是否实际使用http或https作为协议?此协议由https覆盖您的目标主机使用的是什么协议?http或https?我的目标主机正在使用https协议,我正在本地nodejs环境中执行该协议。我尝试过使用交叉提取库()和默认的提取数据示例,但也遇到了相同的错误。您能详细说明一下吗?当然可以。主要问题是我工作的公司对代理人的限制。在这种情况下,您只需要使用域和密码配置代理配置文件,以便能够运行它。至少这是我的解决方案。