"http-proxy"和"request"有什么区别?



我需要创建转发代理(不是反向代理),Node有两个包.js http-proxy 和request

我不明白在创建代理的情况下,它们之间有什么区别?他们是在做完全相同的事情,还是有一些棘手的极端情况?

http-proxy

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');

您给出的两个示例在功能上是相同的,尽管我仍然更喜欢http-proxy,因为它已经带有一些假设,即您专门创建反向/正向代理请求。

最新更新