[英]ENOTFOUND error with express.js (nodejs)
每當我嘗試使用Node.js 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:26)
我已經嘗試了許多在SO上找到的不同解決方案(例如Node.js getaddrinfo ENOTFOUND )。 甚至我在node.js網站(例如https://nodejs.org/api/http.html#http_http_get_options_callback )上找到的網站都無法使用。 現在,我正在嘗試最簡單的版本:
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/'});
解決了問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.