Javascript express.js(nodejs)的enotfind错误
每当我尝试使用我的nodejs express服务器重定向到另一个网页(例如google.com)时,它都会返回以下错误:Javascript express.js(nodejs)的enotfind错误,javascript,node.js,express,proxy,reverse-proxy,Javascript,Node.js,Express,Proxy,Reverse Proxy,每当我尝试使用我的nodejs express服务器重定向到另一个网页(例如google.com)时,它都会返回以下错误: throw er; // Unhandled stream error in pipe. ^ Error: getaddrinfo ENOTFOUND google.com at errnoException (dns.js:44:10) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:94:
throw er; // Unhandled stream error in pipe.
^
Error: getaddrinfo ENOTFOUND google.com
at errnoException (dns.js:44:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:94:26)
我已经尝试了很多不同的解决方案。即使是我在node.js(例如)网站上找到的那些也不会起作用。
现在我正在尝试最简单的版本:
var express = require('express');
var app = express();
var request = require('request');
app.get('/', function(req,res) {
var newurl = 'http://google.com/';
request(newurl).pipe(res);
});
app.listen(1337);
还是这个
var request = require('request');
request('http://www.google.com', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // Show the HTML for the Google homepage.
} else {
console.log(error, response, body);
}
});
显然,内部网络的限制限制了外部通话
var request = require('request').defaults({'proxy': 'http://myproxy:1234/'});
解决了这个问题对我有用。你在哪里运行它?可能是服务器的限制吗?我在office笔记本的localhost上运行它,如果使用
http://www.google.com
或https://www.google.com
?