错误的根源是什么:getaddrinfo EAI_AGAIN?


133

我的服务器今天抛出了这个,这是我从未见过的Node.js错误:

Error: getaddrinfo EAI_AGAIN my-store.myshopify.com:443
    at Object.exports._errnoException (util.js:870:11)
    at errnoException (dns.js:32:15)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:78:26)

我想知道这是否与DynDns DDOS攻击有关,该攻击今天影响了Shopify和许多其他服务。这是有关此的文章。

我的主要问题是怎么dns.js办?它是节点的哪一部分?如何在其他域中重新创建此错误?

Answers:


160

如果您使用Firebase Cloud Functions遇到此错误,则是由于免费套餐的限制(仅允许Google服务使用出站网络)。

升级到FlameBlaze计划即可使用。

在此处输入图片说明


28
您刚刚为我节省了数小时的研究。荣誉
大卫·肖邦

1
是的,刚刚升级为按使用量付费计划,以实现零成本(此火花结转的免费
套餐

您可以@NullPointer,详细说明解决方案吗,我仍然遇到错误`错误:无法处理请求`
Alam

我有同样的问题,已经升级到Blaze帐户,但是问题仍然相同。我正在尝试使用邮递员。
Devendra Singh,


4

这是与主机文件设置有关的问题。将以下行添加到Ububtu中的热点文件中:/ etc / hosts

127.0.0.1   localhost

在Windows中:c:\ windows \ System32 \ drivers \ etc \ hosts

127.0.0.1   localhost

2

OP的错误指定了主机(my-store.myshopify.com)。除了未指定域外,我在所有方面遇到的错误都是相同的。

我的解决方案可能会帮助那些标题为“错误:getaddrinfo EAI_AGAIN”的用户。

尝试从最初开发代码的另一台VM上服务NodeJs和VueJs应用程序时遇到错误。

该文件vue.config.js读取:

 module.exports = {
   devServer: {
     host: 'tstvm01',
     port: 3030,
   },
 };

在原始计算机上使用时,启动输出为:

App running at:
- Local:   http://tstvm01:3030/ 
- Network: http://tstvm01:3030/

在VM上使用相同的设置使tstvm07我得到与OP描述的错误非常相似的错误:

 INFO  Starting development server...
 10% building modules 1/1 modules 0 activeevents.js:183                              
      throw er; // Unhandled 'error' event
      ^

Error: getaddrinfo EAI_AGAIN
    at Object._errnoException (util.js:1022:11)
    at errnoException (dns.js:55:15)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:92:26)

如果还不明显,请更改vue.config.js为...

 module.exports = {
   devServer: {
     host: 'tstvm07',
     port: 3030,
   },
 };

...解决了这个问题。



1

在对在Docker容器中操作的GraphQL API应用程序进行了小规模更新后,我开始遇到此错误(尽管堆栈跟踪不同)。无论出于何种原因,该容器都难以解决API使用的后端服务。

在四处看看是否从(node:13-alpine)构建的docker基本映像进行了一些更改之后,我决定尝试使用最古老的计算机科学技巧进行重新启动...我停下并启动了docker容器,一切都恢复了正常。

显然,这不是解决潜在问题的有意义的解决方案-我只是发布此问题,因为它确实为我解决了问题,而又没有深究兔子的洞。





-15

将npm更新为最新版本可以为我解决此问题。

npm install npm@latest

此问题与您的网络连接有关。因此可以是暂时的。在稳定的Internet连接上,几乎没有观察到此问题。


24
更新软件包管理器如何解决与软件包管理器无关的错误?
FF_Dev '17

3
在@anerjan的辩护中,它可能在运行时发生npm install,我想像一下停止更新并重新启动所花费的时间,他已将其重新连接到Internet。
Rambatino
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.