mirror of
https://github.com/http-party/node-http-proxy.git
synced 2025-12-08 20:59:18 +00:00
[examples] added concurrent proxy example
This commit is contained in:
parent
bbe3bfdf98
commit
04c10113f7
36
examples/concurrent-proxy.js
Normal file
36
examples/concurrent-proxy.js
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
var http = require('http'),
|
||||||
|
httpProxy = require('../lib/http-proxy');
|
||||||
|
|
||||||
|
var connections = [],
|
||||||
|
go;
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Target Http Server
|
||||||
|
//
|
||||||
|
// to check apparent problems with concurrent connections
|
||||||
|
// make a server which only responds when there is a given nubmer on connections
|
||||||
|
//
|
||||||
|
http.createServer(function (req, res) {
|
||||||
|
connections.push(function () {
|
||||||
|
res.writeHead(200, { 'Content-Type': 'text/plain' });
|
||||||
|
res.write('request successfully proxied to: ' + req.url + '\n' + JSON.stringify(req.headers, true, 2));
|
||||||
|
res.end();
|
||||||
|
});
|
||||||
|
|
||||||
|
process.stdout.write(connections.length + ', ');
|
||||||
|
|
||||||
|
if (connections.length > 10 || go) {
|
||||||
|
go = true;
|
||||||
|
while (connections.length) {
|
||||||
|
connections.shift()();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}).listen(9000);
|
||||||
|
console.log("Web server listening on port 9000");
|
||||||
|
|
||||||
|
//
|
||||||
|
// Basic Http Proxy Server
|
||||||
|
//
|
||||||
|
httpProxy.createProxyServer({target:'http://localhost:9000'}).listen(8000);
|
||||||
|
console.log("Proxy server listening on port 8000");
|
||||||
Loading…
x
Reference in New Issue
Block a user