Articles of 节点 http proxy

节点http-proxy:将stream量转发到外部https站点 – 崩溃

我想从我的前端wepp应用程序将REST请求传输到外部Jira服务器上的API。 为此,我正在使用节点http-proxy ,这对于Jira服务器来说是可以使用的。 但是现在我想为https创build一个单独的服务器。 所以使这个例子改变我现在有这样的: var path = require('path'), fs = require('fs'), httpProxy = require('http-proxy'), certFolder = '/my/cert/folder'; // // Create the HTTPS proxy server listening on port 8002 // httpProxy.createServer({ //(placeholder address) target: { host: 'https://ext.jiraserver.com', port: 443 }, // letsencrypt cert ssl: { key: fs.readFileSync(path.join(certFolder, 'privkey.pem'), 'utf8'), cert: fs.readFileSync(path.join(certFolder, 'fullchain.pem'), 'utf8') }, secure: […]

节点NPM代理身份validation – 如何configuration它?

我是Node新手,尝试使用以下命令安装TypeScript: npm install -g typescript 我得到以下错误: if you are behind a proxy, please make sure that the 'proxy' config is set properly. 我使用以下命令设置了我的代理: npm config set proxy http://Username:Pa55w0rd@proxyhostname npm config set https-proxy http://Username:Pa55w0rd@proxyhostname 并尝试这也是: npm config set proxy http://"ninjadev:5trongP@ssw0rd"@proxy.some-bigcorp.com npm config set https-proxy http://"ninjadev:5trongP@ssw0rd"@proxy.some-bigcorp.com 但是他们都没有工作。 我在身份validation的copmpany代理后面工作,所以我认为这阻止了我连接。 我已经添加了我的用户名和密码,这也不起作用。 有没有人有任何想法如何我可以连接到NPM,而使用公司代理和身份validation? 谢谢

承载多个使用代理服务器识别子域的Node.JS应用程序

我正在尝试将某些子域redirect到我的Ubuntu EC2虚拟服务器上的特定端口。 已经尝试过使用DNS,这不会基于以下主题, 默认路由使用节点HTTP代理? 以及如何使用node.js http-proxy在计算机中loggingHTTP通信? ,我试图创build一个Node.JS代理服务器与日志logging。 这就是说我把它混合起来(我是Node.JS的新手,仍然在学习),并做了以下脚本: var httpProxy = require('http-proxy'); var PORT = 80; logger = function() { return function (request, response, next) { // This will run on each request. console.log(JSON.stringify(request.headers, true, 2)); next(); } } var options = { // this list is processed from top to bottom, so '.*' will […]

创build一个可以在发送给客户端之前修改http响应的http代理

我正在使用wget从网上抓取一些东西,但我不想跟随页面的一部分。 我以为我可以设置一个代理,它会删除我不想处理的网页的部分,然后将其返回给wget,但我不知道我将如何实现这一点。 有没有一个代理,让我轻松地修改在Python或Node.js HTTP响应?

节点Http代理 – 基本的反向代理不起作用(404s)

我试图得到一个非常简单的代理与node-http-proxy工作 ,我希望只是返回谷歌的内容: const http = require('http'); const httpProxy = require('http-proxy'); const targetUrl = 'http://www.google.co.uk'; const proxy = httpProxy.createProxyServer({ target: targetUrl }); http.createServer(function (req, res) { proxy.web(req, res); }).listen(6622); 例如,我希望http:// localhost:6622 / images / nav_logo242.png代理到http://img.nodejscore.com/javascript/nav_logo242.png,而不是返回404找不到。 谢谢。

使用http-node-proxy创build一个正向https代理

我正在尝试创build一个能够处理HTTPS网站的转发代理。 我正在尝试观察和修改不同网站的stream量。 这是我的代码适用于http网站,但不适用于https网站。 httpProxy.createServer(function(req, res, next) { //custom logic next(); }, function(req, res) { var proxy = new httpProxy.RoutingProxy(); var buffer = httpProxy.buffer(req); var urlObj = url.parse(req.url); req.headers.host = urlObj.host; req.url = urlObj.path; console.log(urlObj.protocol); setTimeout(function() { proxy.proxyRequest(req, res, { host: urlObj.host, port: 80, buffer: buffer, } )}, 5000); }).listen(9000, function() { console.log("Waiting for requests…"); }); […]

nodejs http-proxy不转发put请求

我已经使用http-proxy和express中间件做了一个代理。 但是,它不会转发PUT请求,这对于我正在代理的应用程序是必不可less的。 我究竟做错了什么? (代理服务器的目的是为代理服务器后面的应用程序提供身份validation,如果还有其他方法可以这样做的话,我将不胜感激) var proxy = new httpProxy.RoutingProxy(); var app = express(); app.configure(function() { app.set('views', __dirname + '/views'); app.set('view engine', 'ejs'); app.engine('ejs', require('ejs-locals')); app.use(express.logger()); app.use(express.cookieParser()); app.use(express.bodyParser()); app.use(express.methodOverride()); app.use(express.session({secret: 'rupert'})); app.use(flash()); app.use(passport.initialize()); app.use(passport.session()); app.use(app.router); app.use(function(req, res) { proxy.proxyRequest(req, res, { host: 'localhost', port: 8080 }); }); app.use(express.static(__dirname + '/../../public')); }); app.get('/login', function(req, res){ res.render('login', { […]

使用node.js http-proxy测量stream量

我使用http和node-http-proxy模块编写了一个用于托pipe我的应用程序的小型反向代理。 例如: 我有: 代理端口80上运行 在端口3000上运行website1.com website2.com在端口3001上运行 网站3在端口3002上运行 如果我访问website1.com域,代理服务器将使用node-http-proxy服务端口3000上运行的服务器的内容。 但是现在我需要测量每个域的带宽(传入/传出,或者至less传出) 我试图侦听请求对象上的“数据”事件,但在文档中,他们表示可读事件不会在IncomignMessage上出于某种原因。 我也为“基础”function写了一个小模块,可以在这里find: https://npmjs.org/package/reproxy 看example / example.js 那么,如何使用当前的设置来完成这个测量呢?

使用http代理的节点负载均衡器比原始服务器慢

我有一个在delphi中构build的web服务,我使用node-http-proxy模块构build了一个负载平衡器来扩展web服务。 当我收到很多请求时(使用100个线程的Jmeter ),我失去了性能。 如果向原始Web服务的端口发出请求,它的响应速度比当我对节点负载均衡器端口发出相同的请求时要快得多。 我试图设置maxSockets = 10000 var agent = new http.Agent(); agent.maxSockets = 10000; var proxy = httpProxy.createProxyServer({aget: agent}); 我也试过了 var agent = new http.Agent(); agent.maxSockets = 10000; proxy.web(req, res, { target: { host: server.host, port: server.port }, agent: agent }); 但问题依然存在 我以为使用节点群集,但使用Windows时有一个错误。 这一个 ,我找不到他们告诉编辑修复错误的文件。 有人有任何想法,我可以申请吗?

监控networking请求和响应的Node.js代理

我正在使用Nodejitsu的http代理来构build一个工具来监控networkingstream量。 httpProxy.createProxyServer({ target: 'http://localhost:9000' }) .listen(8000); util.puts('proxy server listening on port 8000'); http.createServer(function targetServer(req, res) { res.writeHead(302, { 'Location': req.headers.host }); util.puts('request successfully proxied to: ' + req.url + '\n' + JSON.stringify(req.headers, true, 2)); res.end(); }) .listen(9000); util.puts('target server listening on port 9000'); 我想要做的是 代理从客户端(浏览器)传出的请求到我的目标服务器 将他们发送到我的目标服务器的原始目标url 在我的目标服务器上接收响应 将响应发送回客户端 基本上有一个中间人放置在客户端和目标服务器之间,所以我可以监控stream量。 但是,当我尝试这样做时,一旦我发出302请求,我得到一个ECONN错误。 Error: connect ECONNREFUSED at errnoException […]