var http = require('http');
function onRequest(req, res) {
var headers = req.headers;
var host = req.headers.host.split(':')
var options = {
hostname: host[0],
port: host[1]===undefined?80:Number(host[1]),
path: req.url,
method: 'GET'
}
var proxy=http.request(options, function(pres){
pres.pipe(res, {end: true})
})
proxy.on('error', function(err){
console.log(err);
})
req.pipe(proxy, {end:true});
}
http.createServer(onRequest).listen(3000);
我尝试转发http代理,这是我的代码。 我的问题是:当我尝试连接whoer.net(我正在使用firefox)时,在页面源中它包含一些像do-not-exist-domain.com,因此调用'error'事件。在这里,我的浏览器不会停止等待连接数据。 我认为这是因为当调用错误事件时,连接仍然打开,浏览器将等到超时结束。我认为对吗?以及如何解决它:D 谢谢你提前