我需要创建转发代理(不是反向代理),Node.js http-proxy和request有两个包
我不明白创建代理的情况之间的区别是什么?他们是完全一样的,还是有一些棘手的角落案件?
HTTP代理
var http = require('http');
var proxy = require('http-proxy').createProxyServer();
http.createServer(function(req, res) {
proxy.web(req, res, {
target: "http://" + req.headers.host
});
}).listen(3000, 'localhost');
请求
var http = require('http');
var request = require('request');
http.createServer(function(req, res) {
req.pipe(request(req.url)).pipe(res);
}).listen(3000, 'localhost');
答案 0 :(得分:1)
您给出的两个示例在功能上是相同的,但我仍然更喜欢http-proxy
,因为它已经带来了一些假设您专门创建反向/转发代理请求。