javascript - 我的 node.js http 请求第一次工作,现在显示一些错误

标签 javascript node.js http request getaddrinfo

我正在使用node.js“请求”模块来发出http请求。这段代码第一次起作用。但现在它显示一些错误。

var request = require('request');
request('http://www.google.com', function (error, response, body) {
    if (!error && response.statusCode == 200) {
    console.log(body); 
} else {
    console.log(error);
}
})

错误:

{ [Error: getaddrinfo ENOTFOUND www.google.com]
 code: 'ENOTFOUND',
errno: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'www.google.com' }

我不明白为什么会发生这种情况。我的互联网工作正常,我可以在浏览器中打开 google.com。

最佳答案

这是一个 DNS 问题。您可以尝试通过执行以下操作显式使用 Google 的 DNS:

require('dns').setServers(['8.8.8.8','8.8.4.4']);

然后执行您的请求。

关于javascript - 我的 node.js http 请求第一次工作,现在显示一些错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33352301/

相关文章:

java - 我能不能把 'bounce'一个文件上传到一台服务器直接发到另一台服务器?

javascript - 如何使用jquery根据屏幕尺寸生成动态CSS

node.js - Heroku Node.js 错误 R10(启动超时)-> Web 进程在启动后 60 秒内无法绑定(bind)到 $PORT

javascript - Webpack 在终端中运行时会给出 "error error: unknown option ' -p'"

javascript - ReactJS代码编译成功,但未在浏览器上打印

objective-c - 如何获取 HTTP header

密码为 "@"的 HTTP 基本认证 URL

javascript - 从服务器读取 CSV 并将内容放入 html 或 javascript 的下拉列表中

javascript - WebGL:纹理渲染无法正常工作

javascript - 如何将参数传递给队列,然后传递给setTimeout?...困惑