Node.js http.request 失败并显示 [错误:getaddrinfo EADDRINFO]

Posted

技术标签:

【中文标题】Node.js http.request 失败并显示 [错误:getaddrinfo EADDRINFO]【英文标题】:Node.js http.request fails with [Error: getaddrinfo EADDRINFO] 【发布时间】:2012-09-24 12:38:51 【问题描述】:

我有 node.js 服务器,它就像一个代理。它通过执行 http.request 接收请求并将它们转发到另一个域上的 Web 服务。

请求选项通常类似于:


  "host": "some.domain",
  "port": 443,
  "path": "/paht/item/id",
  "method": "POST",
  "headers": 
    "Host": "some.domain",
    "Content-Type": "application/json; charset=utf-8",
    "Content-Length": 100
  

最近,我注意到一些请求以[Error: getaddrinfo EADDRINFO] 失败,但不是全部。

有谁知道EADDRINFO 是什么意思,以及所谓的原因可能是什么?

【问题讨论】:

【参考方案1】:

EAADRINFO 是在查找主机名的 IP 地址时可能出现的错误类型,以防找不到 IP 地址。所以这里很可能意味着请求的"some.domain"值无法解析为IP地址。

【讨论】:

JohnnyHK,感谢您的回复。但最奇怪的是,我一直在向同一个主机名发送请求,有时请求失败,有时域名解析成功 @aliona 作为测试,尝试将主机名替换为其 IP 地址,看看错误是否消失。如果是这样,则可能是您的 DNS 服务器或配置不可靠。

以上是关于Node.js http.request 失败并显示 [错误:getaddrinfo EADDRINFO]的主要内容,如果未能解决你的问题,请参考以下文章

使Node.js中的http.request适用于浏览器

Node.js中的http.request方法的使用说明

Node.js——request/get实现评论功能

node.js createserver获取请求值

理解Node.js请求对象

node.js在发出http请求时区分错误