116 Commits

Author SHA1 Message Date
Fabian Jakobs
d6ea3a425c don't add upgrade handler if a custom handler is passed in
if a callback but no static proxy is defined and
no routes are provided then handlers.length is 1.
However the upgrade event is still automagically
attached in spite of having an explicit callback.
2011-11-16 16:40:51 -08:00
indexzero
f7010e5169 [merge] Merge from significant internal refactor in v0.7.x. No external API changes 2011-09-10 07:05:17 -04:00
indexzero
598fe2e38d [api doc] Rebuilt httpProxy.createServer() with the newer high-level RoutingProxy API 2011-09-09 18:14:49 -04:00
indexzero
ec03d72c5d [minor] Move private methods to the bottom of file(s) 2011-09-08 16:53:42 -07:00
indexzero
0e36912906 Fixed large DoS vector in the middleware implementation 2011-09-08 16:44:25 -07:00
indexzero
ca1d12cf1b [fix] Memory leak hunting. 2011-09-08 16:21:20 -07:00
indexzero
38315f6b1f [minor] More contextual errors when middleware(s) error 2011-09-08 16:07:35 -07:00
Tj Holowaychuk
07c8d2ee60 Fixed large DoS vector in the middleware implementation 2011-09-08 14:36:40 -07:00
indexzero
5575bcf60c [minor] Remove commented out debug statements. 2011-09-08 14:24:43 -07:00
isaacs
558a8a4f79 resume() can throw 2011-09-08 14:06:31 -07:00
isaacs
84be9f2c3a Emit drain if it doesn't happen on its own in 100ms 2011-09-08 14:06:22 -07:00
isaacs
2b9e09b00a Add flow control
Not in the "async/fibers/coro" sense of flow control, but in the TCP
backpressure sense.

Pause the stream when a write isn't flushed, and then resume it once the
writable stream drains.
2011-09-08 14:06:14 -07:00
isaacs
f4fcf93403 Memory leak hunting.
Detach listeners and clean up buffer on error
2011-08-31 11:47:44 -04:00
indexzero
f6dc12a971 [fix] Use req.connection for all x-forward-* headers 2011-08-28 21:14:42 -04:00
isaacs
7bda25b1c6 Add guards to every throw-able res.end call 2011-08-28 15:52:35 -07:00
isaacs
62201a0917 Fix #95 Don't look on req.connection if it's not set. 2011-08-28 13:41:19 -07:00
indexzero
340be42797 [minor] Dont use .bind() 2011-08-28 05:28:57 -04:00
indexzero
daf9231a66 [test fix] A few minor fixes to ensure basic WebSocket tests are working. Better scope tests by supported protocol 2011-08-28 05:06:14 -04:00
indexzero
be4562da9f [api test] Updated httpProxy.createServer() for new API exposed by simplified HttpProxy object.
[breaking] Temporarily removed pending refactor: middleware & ProxyTable support
2011-08-28 04:40:51 -04:00
indexzero
d2b0e4399e [api breaking] Begin refactor to optimize node-http-proxy by managing one instance of HttpProxy per host:port location 2011-08-28 03:38:39 -04:00
indexzero
5d6e6b9f78 [api] Expose adapted version of stack so it can be used with HttpProxy instances not created by httpProxy.createServer() 2011-08-28 01:49:41 -04:00
isaacs
be3a0d84a1 Handle cases where res.write throws 2011-08-28 01:49:37 -04:00
indexzero
5d0bbb38c3 [minor dist] Use pkginfo. Minor updates to variable scoping in .createServer() 2011-08-18 20:58:16 -04:00
Dominic Tarr
604ed2878d Merge branch 'patch-1' of https://github.com/KimSchneider/node-http-proxy
closes #80
Conflicts:
	lib/node-http-proxy.js
2011-08-03 00:06:08 +10:00
Dominic Tarr
e6ff8d6597 [api] merge middleware branch 2011-08-02 15:41:03 +10:00
Dominic Tarr
0f8fe8e246 [style] tidy 2011-08-02 15:33:03 +10:00
Dominic Tarr
20125889b3 [fix] do not use middleware code if it's not needed 2011-08-02 15:25:23 +10:00
indexzero
f7452bc42d [fix] Dont use res.* in proxyWebSocketRequest 2011-08-02 14:55:49 +10:00
indexzero
f0917a3f97 [minor] Style updates and whitespace cleaning for consistency 2011-08-02 14:55:49 +10:00
Dominic Tarr
8b48b7e0af [minor] code style changes 2011-08-02 14:51:37 +10:00
Dominic Tarr
7976de1121 support old (port,host) and (options) style when using middlewares 2011-08-02 14:51:36 +10:00
Dominic Tarr
c773eedeb6 [minor] add middleware to node-http-proxy 2011-08-02 14:51:36 +10:00
KimSchneider
2caa5d2b0d The number of maxSockets has to be set after the agent is created. Setting the property in the constructor does not work. 2011-08-01 13:22:30 +03:00
Dominic Tarr
b54666ff69 [minor] add middleware to node-http-proxy 2011-07-24 23:17:24 +10:00
Dominic Tarr
25c06a3a95 [fix] handler variable in createServer was global (!) 2011-07-23 05:40:29 -07:00
Dominic Tarr
e3d95ecab2 [minor] default enableXForwarded to true 2011-07-21 23:53:25 +10:00
Dominic Tarr
76aa982181 Merge pull request #73 from DanBUK/master
This adds a flag to ProxyRequest to disable the setting of x-forwarded-[for|port|proto]
(will change default to true in next commit)
2011-07-21 06:38:48 -07:00
Dominic Tarr
efa17ef6cf [fix] use routing table mhen proxying WebSockets.
closes issue #72
2011-07-21 23:08:11 +10:00
DanBUK
ee3506a8e7 Updating to enableXForwarded 2011-07-19 09:57:21 +01:00
DanBUK
404818b1dc Allow forwarding for x-forwarded-[for|port|proto] to enabled layering of http-proxies. 2011-07-18 12:07:54 +01:00
indexzero
eb6f9a6354 [api] Simplify the usage for the .changeHeaders option. Fixes #34 2011-06-26 12:21:06 -04:00
indexzero
9d9509f791 [doc] Small update to code docs 2011-06-26 10:56:12 -04:00
indexzero
4f85ca04e4 [api doc test] node-http-proxy now emits websocket:* on important WebSocket events. Added tests for these features and updated some code docs 2011-06-26 10:52:22 -04:00
indexzero
b608a029f8 [minor] Add missing space 2011-06-23 04:34:47 -04:00
indexzero
887c5808c9 [refactor] Manage our own internal list of Agent instances 2011-05-25 00:48:44 -06:00
indexzero
028d2044e7 [fix] Change sec-websocket-location header when proxying WSS --> WS. Added test coverage for this scenario 2011-05-23 02:18:12 -04:00
indexzero
a86d18bc7f [fix] Dont force Connection: close now that Keep-Alive is supported 2011-05-21 10:41:51 -04:00
indexzero
6fd272ac18 [doc] Update to v0.5.7 in code and README.md 2011-05-19 02:48:46 -04:00
indexzero
421895fa30 [api] Add x-forwarded-proto and x-forwarded-port to proxied HTTP requests 2011-05-19 02:43:41 -04:00
indexzero
e9b3ec9b1d [fix] Set x-forwarded-for from req.connection.socket.remoteAddress if req.connection.remoteAddress is not defined 2011-05-19 02:27:38 -04:00