194 Commits

Author SHA1 Message Date
Dominic Tarr
f27d26f451 changeOrigin option: set the host header to the proxy destination 2011-11-15 07:41:09 +11:00
Dominic Tarr
65b7872e6a update outgoing.headers.host incase the destination does proxying 2011-11-11 12:27:21 +11:00
Dominic Tarr
182dcd3455 always emit end in 0.4 2011-11-10 16:44:23 +11:00
root
c83d88ee88 Revert "[refactor] Improved event handler cleanup "
This reverts commit 9f923325d08ac018a3325beaa9e0805b5eda61e6.
2011-10-25 16:13:43 +00:00
Marak Squires
9f923325d0 [refactor] Improved event handler cleanup 2011-10-25 09:09:40 -07:00
Marak Squires
9e630daf81 [minor] Indentation fix 2011-10-25 06:25:15 -07:00
Marak Squires
63ac925260 [refactor] core proxy logic. all tests should be passing. 2011-10-25 06:18:35 -07:00
bradleymeck
7feee194f8 [fix] only set one drain listener while paused 2011-10-22 13:13:10 -05:00
Max Ogden
91e9bb9070 adding tests for url segment proxytable routing 2011-10-15 14:22:36 -07:00
Max Ogden
4d50915373 change proxytable routing to route one level shallower 2011-10-14 15:42:39 -07:00
Florian Traverse
b7adf866b5 added what is necessary for having proxyError on Routing proxywq 2011-10-04 01:49:12 +02:00
Fedor Indutny
45ef87e71b [websockets] add latest websockets support 2011-09-30 03:28:46 +02:00
Joshua Holbrook
1f33943b23 [fix] connection.socket -> socket for source of x-forwarded-for data 2011-09-20 14:34:03 -07:00
Joshua Holbrook
2677bb6c44 [fix] x-forwarded http headers should set properly. 2011-09-20 13:00:59 -07: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
0eb4917ded [fix] Add x-forward-* headers for WebSocket requests. Closes #74 2011-09-10 06:57:51 -04:00
indexzero
f765f90ec3 [api] Finalized the RoutingProxy API 2011-09-10 03:55:07 -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
5927ecd62a [api test dist] Stubbed out the API for the higher-level RoutingProxy object to be exposed by node-http-proxy 2011-09-08 18:22:38 -07:00
indexzero
0eae2a913a [api] Added new close() method which cleans up sockets from HttpProxy instances 2011-09-08 16:55:45 -07: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
0c71119ee5 resume() can throw 2011-09-08 16:41:42 -07:00
indexzero
37e2541891 Emit drain if it doesn't happen on its own in 100ms 2011-09-08 16:36:19 -07:00
indexzero
6a7fd14bfa Add flow control 2011-09-08 16:29:15 -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
e1c41d0694 [fix] Add guards to every throw-able res.end call 2011-08-28 21:27:01 -04:00
indexzero
de4a6fe8a5 [fix] Only set x-forward-* headers if req.connection and req.connection.socket 2011-08-28 21:21:35 -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