isaacs
bfe9cdb7f2
Null references to request object on socket errors.
...
Regarding #3199 and #3179 and issues seen in production.
Hopefully this fixes them.
2012-05-01 14:26:18 -07:00
ssuda
70005be4ff
Fixing ClientRequest setTimeout EventEmitter Leak
...
This will fix #3068
2012-04-16 23:36:18 +02:00
ssuda
48d52d85c3
http, https: fix .setTimeout()
...
Fixes #3107 .
2012-04-16 18:00:38 +02:00
Igor Zinkovsky
5ad0140f48
Emit end event only once
...
fixes #2888
Previously a pair of end events would be emitted if a response was
paused/resumed, and the underlying socket was closed while the
response was paused
2012-03-07 13:37:39 -08:00
Yoshihiro Kikuchi
f82ef0f7c3
http: remove ClientRequest.prototype.pause()
...
ClientRequest.prototype.pause() is not needed. ClientRequest is a writable
stream and deferring to OutgoingMessage.prototype.pause() is broken, the method
does not exist.
2012-03-07 20:17:36 +01:00
Dmitry Nizovtsev
1e9bcf26ce
net, http, https: add localAddress option
...
Binds to a local address before making the outgoing connection.
2012-03-06 13:35:49 +01:00
Maciej Małecki
da908364a8
tls http https: don't pollute user's `options` object
2012-02-20 21:58:00 +01:00
isaacs
0cdf85e28d
Lint all the JavaScripts.
2012-02-18 15:34:57 -08:00
isaacs
31721da4b1
Merge remote-tracking branch 'ry/v0.6' into v0.6-merge
...
Conflicts:
AUTHORS
ChangeLog
Makefile
doc/about/index.html
doc/api/tls.markdown
doc/community/index.html
doc/index.html
doc/logos/index.html
doc/template.html
lib/http.js
lib/tls.js
src/node_version.h
src/platform_win32.cc
test/simple/test-tls-connect-given-socket.js
2012-02-18 09:46:58 -08:00
einaros
83fd1c1de5
Add WebSocket RFC6455 multiheader fields to the http parser.
2012-02-16 14:12:38 -08:00
Ben Noordhuis
2c07712860
http: allow multiple WWW-Authenticate headers
2012-02-16 14:11:49 -08:00
Mark Nottingham
1e425e3fa7
Generate Date headers on responses when not already present.
2012-02-15 12:35:34 -08:00
Ben Noordhuis
6141386f7e
http: allow multiple WWW-Authenticate headers
2012-02-15 17:04:10 +01:00
koichik
c2dc673eb5
http: fix http-parser is freed twice
...
after response to CONNECT/Upgrade request.
Fixes #2704 .
2012-02-07 02:29:28 +09:00
isaacs
18d179c2d8
Merge remote-tracking branch 'ry/v0.6' into master
...
Conflicts:
ChangeLog
deps/uv/src/unix/udp.c
deps/uv/src/win/fs.c
deps/uv/src/win/udp.c
deps/uv/test/test-fs.c
doc/index.html
doc/logos/index.html
doc/template.html
src/node_version.h
2012-01-31 18:18:00 -08:00
koichik
3fd13c6426
http: fix free http-parser too early
...
when the status code is 100 (Continue).
Fixes #2636 .
2012-01-31 00:16:01 +09:00
Brandon Benvie
5403a8ce4c
core: add `NativeModule.prototype.deprecate`
...
Formalize and cleanup handling of deprecated core methods.
2012-01-30 00:27:07 +01:00
Ben Noordhuis
e806ad39d0
net, tls, http: remove socket.ondrain
...
Replace the ondrain hack with a regular 'drain' listener. Speeds up the
bytes/1024 http benchmark by about 1.2%.
2012-01-24 15:57:50 +01:00
koichik
a6f3451e25
http: fix test-http-should-keepalive.js is fail
...
3df7c90
was removed when conflict was resolved.
2012-01-24 13:57:20 +09:00
Fedor Indutny
667aae596c
Merge branch 'v0.6'
...
Conflicts:
ChangeLog
doc/template.html
lib/cluster.js
lib/http.js
lib/tls.js
src/node.h
src/node_version.h
test/simple/test-cluster-kill-workers.js
2012-01-24 00:30:28 +06:00
koichik
3df7c90c30
http: keep-alive should default with HTTP/1.1 server
...
As RFC 2616 says we should, assume that servers will provide a persistent
connection by default.
> A significant difference between HTTP/1.1 and earlier versions of
> HTTP is that persistent connections are the default behavior of any
> HTTP connection. That is, unless otherwise indicated, the client
> SHOULD assume that the server will maintain a persistent connection,
> even after error responses from the server.
> HTTP/1.1 applications that do not support persistent connections MUST
> include the "close" connection option in every message.
Fixes #2436 .
2012-01-22 14:55:41 +09:00
Ben Noordhuis
56e34c2f81
http: fix deprecation warning module ID
...
Mea culpa, I told @mmalecki wrong
2012-01-21 14:34:33 +01:00
koichik
35fe3eb5c7
http: reduce creating http-parser instances
...
Fixes #2577 .
2012-01-20 16:24:01 -08:00
Maciej Małecki
d5047f5fe6
http: use `util._deprecationWarning` for deprecation warning
2012-01-16 19:45:14 +01:00
Fedor Indutny
f1678bfc65
http: do not accept headers if limit is exceeded
...
* fix limiting when parser was reused
* fix maxHeadersCount = 0 is ignored ( credit to @koichik )
* add test-http-max-headers-count.js ( credit to @koichik )
2012-01-16 16:36:23 +06:00
Fedor Indutny
8a98c2f1d8
http, querystring: added limits to prevent DoS
2012-01-16 02:45:05 +06:00
koichik
7dffbaf2ce
http: Upgrade/CONNECT request should detach its socket earlier
...
With Upgrade or CONNECT request, http.ClientRequest emits 'close' event
after its socket is closed. However, after receiving a response, the socket
is not under management by the request.
http.ClientRequest should detach the socket before 'upgrade'/'connect'
event is emitted to pass the socket to a user. After that, it should
emit 'close' event immediately without waiting for closing of the socket.
Fixes #2510 .
2012-01-12 14:17:19 +09:00
Ryan Dahl
8b28d599a7
Merge remote branch 'origin/v0.6'
...
Conflicts:
Makefile
configure
src/node_version.h
2012-01-09 11:20:22 -08:00
koichik
08a91acd76
http: better support for CONNECT method.
...
Introduces 'connect' event on both client (http.ClientRequest) and
server (http.Server).
Refs: #2259 , #2474 .
Fixes #1576 .
2012-01-09 03:51:06 +01:00
koichik
dd9593ccc4
http: fix ServerResponse does not emit 'close'
...
Refs #2453 .
2012-01-06 15:45:21 +09:00
koichik
baebd30eee
http: use `self` insted of `this`
2012-01-05 17:43:00 +09:00
Ben Noordhuis
add4cfcf5f
Merge branch 'v0.6'
...
Conflicts:
src/platform_win32.cc
2011-12-29 01:56:44 +01:00
koichik
a337ac7584
http: fix XMLHttpRequest piped in a writable file stream hangs next request
...
Fixes #2263 .
2011-12-27 17:42:37 +09:00
koichik
e6b6075024
http: Avoid 'data'/'end' events after pause()
...
Fixes #1040 .
2011-12-26 16:14:47 +01:00
koichik
7aa5924dc6
http: fix resource leak
...
Fixes #2069
2011-12-26 08:05:35 +01:00
Ryan Dahl
48a9a2d355
Add deprecation message for http.Client
2011-12-23 17:42:27 -08:00
seebees
aab958b713
OutgoingMessage.prototype.write does not take Array
...
Changed the type checking for OutgoingMessage.prototype.write so it only accepts string and Buffer.
And test.
Fixes #2162
Fixes #2208
2011-11-29 16:52:15 +09:00
Ben Noordhuis
359a65a6db
http: emit Error object after .abort()
...
It was emitting the net.Socket object due to misuse of the arguments object.
Fixes #1399 .
2011-11-03 01:30:03 +01:00
koichik
8a729270c1
fix for --harmony_block_scoping
...
Fixes #1969 .
2011-10-31 00:49:20 +09:00
seebees
216570b5e1
Lint
2011-10-22 14:14:40 +09:00
seebees
005d607aed
http.request(url.parse(x))
...
http2.js
protocols object to store defaults for http and https, and use as a switch for supported protocols.
options.hostname > options.host > 'localhost'
if I have an options.auth element and I do not have an Authorization header, I do basic auth.
http.request collapses to new ClientRequest since the defaults are handled by the protocol object
test-http-url.parse*
Fixes #1390
Conflicts:
lib/http2.js
2011-10-22 14:14:40 +09:00
Ben Noordhuis
84d0b1bcc5
http: improve http parser bindings
...
Speeds up HTTP benchmarks by 10% on average.
2011-10-20 19:19:02 -07:00
Yoshihiro Kikuchi
f90ba61478
http: tiny fix in http.js
...
Fixes #1885 .
2011-10-17 01:14:45 +09:00
Ryan Dahl
3a34972672
Fix test-http-conn-reset.js on OSX
2011-10-12 17:31:49 -07:00
Bert Belder
153629c99a
Some small optimizations
2011-10-07 13:38:23 -07:00
Ben Noordhuis
bc7cfd7cd7
http: remove legacy http library
2011-10-04 20:51:34 +02:00
Peter Lyons
a4eee3d28f
http: remove 'headers sent?' check in OutgoingMessage.getHeader()
...
Fixes #752 .
2011-08-28 23:47:10 +02:00
Ryan Dahl
8320af7ef3
Merge remote branch 'origin/v0.4'
...
Conflicts:
doc/api/tls.markdown
2011-08-17 13:25:44 -07:00
Ryan Dahl
9cd510846e
Fixes #1546 . Remove expensive debug call.
2011-08-17 13:21:15 -07:00
Ryan Dahl
2126989a32
Fix test-http-upgrade-server and test-http-parser
...
Problem was introduced in last http-parser upgrade which fixed a long
standing bug with the upgrade event and removed several callbacks.
2011-08-08 17:12:26 -07:00
koichik
62aaf56d1b
Fix http.ClientRequest crashes if end() was called twice
...
Fixes #1417 .
Fixes #1223 .
2011-07-30 00:47:17 +09:00
koichik
8b3ba47f88
Fix http.ClientRequest crashes if end() was called twice
...
Fixes #1417 .
Fixes #1223 .
2011-07-30 00:07:37 +09:00
Ben Noordhuis
2ed23314c3
http: make http and http2 co-exist
...
http2 is currently disabled pending addition of a --use-http2 switch
2011-07-26 17:00:53 +02:00
Mikeal Rogers
2b929c7f19
http: http2 implementation
2011-07-26 16:59:52 +02:00
Ryan Dahl
0ed1354119
Merge branch 'v0.4'
...
Conflicts:
ChangeLog
deps/v8/src/version.cc
doc/index.html
src/node_version.h
test/simple/test-url.js
wscript
2011-07-22 03:10:38 -07:00
Trent Mick
bbf7e8ed5e
http: fix setting ServerResponse.statusCode in writeHead
...
Fixes #1374 .
2011-07-21 14:20:40 +02:00
Trent Mick
a8f96d3314
http: fix setting ServerResponse.statusCode in writeHead
...
Fixes #1374 .
2011-07-21 14:15:33 +02:00
Reid Burke
973153d1cc
Properly respond to HEAD during end(body) hot path
...
During write(), _hasBody is checked to make sure a body
is allowed -- this is now also checked during end(body)
when write() isn't used.
Concise final chunk for HEAD req's res.end(data).
Instead of simply clearing data, check _hasBody
earlier to avoid sending cruft when chunkedEncoding
is used.
Fixes #1291 .
2011-07-20 00:24:17 +09:00
Ryan Dahl
041c983290
Merge branch 'v0.4'
...
Conflicts:
deps/libev/wscript
doc/api/modules.markdown
2011-07-14 15:52:08 -07:00
Stefan Rusu
5b02d564c3
Fixes #1085 . The agent end event may call detachSocket() after the socket is detached and destroyed by abort(). This patch avoids that behavior.
2011-07-15 00:33:28 +09:00
Ben Noordhuis
b62ecdc5bb
Revert 3e2a2a7
. Always send a HTTP/1.1 status line to the client.
2011-07-07 23:54:13 +02:00
Ben Noordhuis
3e8667d829
Revert 8dc8773
. Always send a HTTP/1.1 status line to the client.
2011-07-07 23:49:31 +02:00
Ryan Dahl
64a06c5ffd
Revert "Error argument for http.ServerRequest 'close'"
...
Too slow.
This reverts commit e7ac6d8fcd
.
2011-07-05 15:48:31 -07:00
Ben Noordhuis
f91988979f
Don't send a HTTP/1.1 status line to HTTP/1.0 clients.
...
Fixes #1234 .
2011-07-05 01:41:30 +02:00
Ben Noordhuis
8dc87731c7
Don't send a HTTP/1.1 status line to HTTP/1.0 clients.
...
Fixes #1234 .
2011-07-05 01:13:57 +02:00
Ryan Dahl
6d8b43c366
http: Fix agent id creation
...
Unbreaks test-regress-GH-877.js
2011-07-03 11:05:14 -07:00
Ryan Dahl
a1e8fcc5ae
Merge branch 'v0.4'
2011-07-01 20:32:41 -07:00
Ryan Dahl
efca5456b8
Fixes #877 . Don't wait for socket pool to establish connections.
...
Thanks to Yann Biancheri for putting together an initial test.
2011-07-01 15:49:42 -07:00
Ryan Dahl
23b8931b62
Merge branch 'v0.4'
...
Conflicts:
src/node.js
src/node_version.h
2011-06-29 14:50:03 +02:00
Ryan Dahl
d627083ed5
Fixes #1187 . Support multiple 'link' headers
2011-06-20 12:51:30 +02:00
isaacs
794cb60f9e
typo
2011-06-04 10:41:41 -07:00
isaacs
580ab7ba2c
Avoid instanceof for native object types
...
For classes defined in the module, this is fine. For 'Error'
it's probably not very hazardous. However, testing 'Object'
and 'String' is much more reliable using typeof, to work with
the repl and NODE_MODULE_CONTEXT modes.
2011-06-04 10:38:49 -07:00
Ryan Dahl
860cb906a6
Merge branch 'v0.4'
...
Conflicts:
src/node_version.h
2011-05-22 13:02:06 -07:00
Ryan Dahl
70dd6d4ea3
Fix TJ's assert error
...
Unable to reproduce but connect's "make test TESTS=test/static.test.js" does
it occasionally.
2011-05-20 15:41:04 -07:00
Ryan Dahl
85bc8d02fa
Merge branch 'v0.4'
...
Conflicts:
src/node_crypto.cc
2011-05-16 19:29:02 -07:00
Felix Geisendörfer
e7ac6d8fcd
Error argument for http.ServerRequest 'close'
...
Problem: It was not possible to detect the reason for a premature
connection termination in http requests.
This patch provides a new `err` argument to the 'close' event which
can be inspected to differentiate between a timeout and a client
actively terminating the connection.
Also contains tests for this new behavior for http and https.
2011-05-14 14:15:31 -07:00
isaacs
205b9beb6b
Merge branch 'v0.4'
...
Conflicts:
lib/tls.js
lib/url.js
src/node_version.h
test/simple/test-buffer.js
test/simple/test-url.js
2011-05-07 20:38:32 -07:00
Ryan Dahl
110f06578d
Agent socket errors bubble up to req only if req exists
...
Fixes #836 .
2011-05-07 12:30:58 -07:00
Mark Cavage
a2328dc73c
Add support for Unix Domain Sockets to HTTP
...
fixes #979 .
2011-04-25 16:52:31 -07:00
Ryan Dahl
598792ba91
Merge branch 'v0.4'
...
Conflicts:
src/platform_sunos.cc
test/simple/test-os.js
2011-04-14 01:11:21 +00:00
Abe Fettig
83727a4c86
Fix bug where http response.readable was never set to false
...
Closes GH-867.
2011-04-12 14:55:18 -07:00
Ryan Dahl
9ccf0e527f
Don't error on ENOTCONN from shutdown()
2011-04-11 15:33:24 -07:00
Ryan Dahl
bfa9db9dd6
Merge branch 'v0.4'
...
Conflicts:
src/node_version.h
test/simple/test-buffer.js
2011-04-03 23:42:56 -07:00
isaacs
6d85da185c
Closes GH-721 Set default host header properly
...
However, this test is failing for some quite unrelated issue.
Getting some odd "socket hangup" crashes, and only the first request
ever makes it to the server.
2011-04-01 17:40:41 -07:00
Ryan Dahl
602a4637bf
Merge branch 'v0.4'
...
Conflicts:
src/node_version.h
2011-03-18 11:11:43 -07:00
Ryan Dahl
66570c1964
Fix double free of parser on error in http.Agent.
...
Thanks to Stéphan Kochen for the fix and Maurice Fonk for reproducing the
bug.
Closes GH-784.
Closes GH-803.
2011-03-18 10:42:43 -07:00
Ryan Dahl
247d880113
Merge branch 'v0.4'
...
Conflicts:
src/node_version.h
2011-03-14 17:45:15 -07:00
Ryan Dahl
55048cdf79
Update copyright headers
2011-03-14 17:37:05 -07:00
Ryan Dahl
36e75b7351
Fix HTTP agent disconnection problem
...
https://groups.google.com/forum/#!topic/nodejs-dev/V5fB69hFa9o
Closes GH-787.
2011-03-14 14:47:41 -07:00
Ryan Dahl
8838e14ac0
Merge branch 'v0.4'
2011-02-25 16:48:48 -08:00
Russell Haering
7276ff9822
http: fix missing 'drain' events
2011-02-24 17:39:59 -08:00
Ryan Dahl
ea9f5b110a
Add 'close' and 'aborted' events to Agent responses
...
Closes GH-722.
2011-02-24 17:16:13 -08:00
Ryan Dahl
360885a7e9
deprecate http.cat
2011-02-24 17:06:46 -08:00
Felix Geisendörfer
f423ec90fc
In addition to 'aborted' emit 'close' from incoming requests
...
Closes GH-160.
2011-02-24 12:41:51 -08:00
Ryan Dahl
5287703cce
Pragma HTTP header comma separation
...
Closes GH-715, GH-716.
2011-02-24 12:02:22 -08:00
Ryan Dahl
c2a62951f6
TLS sockets should not be writable after 'end'
...
Closes GH-694.
2011-02-19 18:25:15 -08:00
Ryan Dahl
aac5cbe025
HTTP Agent sockets should not reconnect on error
...
Closes GH-684.
2011-02-18 10:40:09 -08:00
Ryan Dahl
9b0c7618c5
HTTP Agent should not die on evil server
...
Closes GH-680.
2011-02-18 00:42:07 -08:00
Ryan Dahl
c365f56061
https was missing 'end' event sometimes
...
Closes GH-671.
2011-02-15 17:13:53 -08:00
Ryan Dahl
77ae87d367
default to port 80 for http.request
2011-02-15 12:08:26 -08:00
Richard Rodger
b11d78b386
Fix for DNS fail in HTTP request
...
Closes GH-653.
2011-02-14 16:36:23 -08:00
Tj Holowaychuk
fe838611f6
Fixed field merging with progressive fields on writeHead()
2011-02-14 13:40:31 -08:00
Tim Caswell
b09c5889be
Add support for mutable/implicit headers for http.
...
This works for both ServerResponse and ClientRequest.
Adds three new methods as a couple properties to to OutgoingMessage objects.
Tests by Charlie Robbins.
Change-Id: Ib6f3829798e8f11dd2b6136e61df254f1564807e
2011-02-10 02:31:41 -08:00
Ryan Dahl
e9257b859d
New DTrace probes from CA team
2011-02-09 18:50:26 -08:00
Russell Haering
e6ede31554
http: fix buffer writes to outgoing messages
2011-02-07 12:59:25 -08:00
Mikeal Rogers
2b03ba5917
http: agent takes options instead of host, port pair
2011-02-05 02:35:44 -08:00
Ryan Dahl
4733d0b1f0
http: handle aborts
2011-02-04 18:07:00 -08:00
Ryan Dahl
bfb6a67d60
Another fix for process.assert
2011-01-27 16:59:28 -08:00
Ali Farhadi
36ef5643c3
Fixing bug in http request default encoding.
2011-01-26 12:18:25 -08:00
Ryan Dahl
39ff40e5a2
Use old http.Client
...
This is meant as a path for upgrading to the new http.request() API.
http.Client will be disappearing in the future.
2011-01-25 12:13:20 -08:00
Ryan Dahl
068b733583
Land Cantrill's DTrace patch
...
only works on solaris
2011-01-24 18:59:06 -08:00
Ryan Dahl
9e976abad9
lint
2011-01-24 10:55:30 -08:00
Ali Farhadi
d81afcb3a6
Fixing bug in http request's end method.
2011-01-23 15:22:42 -08:00
Mikeal Rogers
8d37f80f4b
Expose agent in http and https client.
2011-01-23 12:02:43 -08:00
Ryan Dahl
76afea90cf
Fix test-http-exceptions
...
Agent: Each time an http req is sent to a socket, _cycle to try to dispatch
another. Problem became apparent in 4612b0 when we wait for connecting
sockets.
2011-01-21 17:49:01 -08:00
Ryan Dahl
4612b07604
Fix test-http-allow-req-after-204-res
...
Agent queue waits for connecting sockets.
2011-01-21 17:39:48 -08:00
Ryan Dahl
68f2aa2715
http: agent should cycle on close
2011-01-21 14:55:29 -08:00
Ryan Dahl
b9574b995f
Expose http.getAgent
2011-01-21 13:47:27 -08:00
Ryan Dahl
e65f6b4ce1
Initial pass at https client
2011-01-21 13:13:02 -08:00
Ryan Dahl
0866ecaf3f
...
2011-01-20 18:10:15 -08:00
Ryan Dahl
f465949516
hacky work around socket hangups on http requests
2011-01-20 18:10:15 -08:00
Ryan Dahl
d89454e5d4
Backport client 'upgrade' events
2011-01-20 18:10:15 -08:00
Ryan Dahl
4125822bed
all errors go to req object
2011-01-20 18:10:15 -08:00
Ryan Dahl
105c35b9fd
http.Client shims
2011-01-20 18:10:15 -08:00
Ryan Dahl
e576d4ec79
Add parser to agent
2011-01-20 18:10:15 -08:00
Ryan Dahl
60aea96f84
first pass at http refactor for TLS
2011-01-20 18:10:15 -08:00
Ryan Dahl
2957382991
Implement new stream method, destroySoon
...
Still missing on fs.WriteStream
2011-01-04 11:22:19 -08:00
Ryan Dahl
73f4ec51fd
hack for ending https connections
2011-01-04 10:36:05 -08:00
Ryan Dahl
94f8368cf9
First pass at new https server
2011-01-03 15:51:05 -08:00
Ryan Dahl
e4dd5cd6fd
NODE_DEBUG uses strings instead of bitflags
2011-01-03 15:41:58 -08:00
Ryan Dahl
a0159b4b29
Fix global leaks
2010-12-04 15:58:50 -08:00
Ryan Dahl
e232f6e735
more lint
2010-12-01 20:28:28 -08:00
Ryan Dahl
735b9d50a3
Simplify state transitions in http.Client
...
Fixes new bug shown in test-http-allow-req-after-204-res.js pointed out by
Tom Carden <tom.carden@gmail.com>.
2010-11-29 14:21:51 -08:00
Ryan Dahl
6057747e9e
Improve HTTP debug messages
2010-11-29 13:53:35 -08:00
Ryan Dahl
1db59afb75
style
2010-11-29 08:57:40 -08:00
Ryan Dahl
2320497992
Revert "Merge branch 'writev'"
...
This reverts commit cd9515efd9
, reversing
changes made to df46c8e698
.
Too slow. Needs more work.
2010-11-20 20:55:15 -08:00
Ryan Dahl
e1250a3333
Reset _eof on socket reuse
2010-11-18 16:47:37 -08:00
Ryan Dahl
dcc547d798
Dumper net.js integration
2010-11-18 16:47:37 -08:00
Ryan Dahl
df46c8e698
Rip out the old TLS implementation
2010-11-18 16:46:37 -08:00
Ryan Dahl
72aee8216c
Fix permissions on http.js
2010-10-26 11:31:01 -07:00
Ryan Dahl
2470d2ee92
allowHalfOpen disabled by default
...
Users too often would forget to add
socket.on('end', function () {
socket.end();
});
Which is a mistake. Therefore we default to this behavior and
only optionally let people handle the 'end' case themselves.
2010-10-26 01:10:18 -07:00
Mark Nottingham
b14eeb3c1e
Fix expect/continue keepalive
2010-10-18 15:38:46 -07:00
Ryan Dahl
8139bb24c1
Add destroy methods to HTTP messages
...
needs tests (particularly for pipeline situations)
2010-10-11 16:36:14 -07:00
Micheil Smith
0e1a581916
Removed deprecated methods from lib/http.js
2010-10-11 16:20:08 -07:00
Ryan Dahl
7e24a05cba
Fix test-http-buffer-sanity
2010-10-11 16:00:36 -07:00
Micheil Smith
e38eb0c5a4
Soft migration of sys -> util, Removal of deprecated utils module.
2010-10-11 15:21:36 -07:00
Ryan Dahl
2944e03a03
Closer to a working pipe
2010-10-11 01:22:38 -07:00
Micheil Smith
1af52d28ca
Changing http.js to use the same stream.Stream creation as net.js
2010-10-10 19:43:21 -07:00
Ryan Dahl
bc695475b9
Add Stream base class with stream.pipe
2010-10-10 17:27:03 -07:00
Ryan Dahl
0003c701bc
expose parsers freelist
2010-10-07 16:17:06 -07:00
Joshaven Potter
3d4e4d8909
syntax fixes to pass jslint
2010-10-06 20:40:57 -07:00
Ryan Dahl
38f8665f3a
lib/http.js - nested loop stepping on variables of outer loop
...
Fixes #318 .
2010-10-04 10:50:37 -07:00
Mark Nottingham
d59512f6f4
Add support for handling Expect: 100-continue
...
HTTP/1.1 requests, either with an event (check_continue) or automatically, if no event handler is present.
Add client-side expect/continue support, tests.
Expound upon client requirements for expect/continue.
2010-10-01 15:30:53 -07:00
Ryan Dahl
265cda97d7
Fix zero length buffer bug for http res.end()
...
Reported by Kadir Pekel <kadirpekel@gmail.com>
2010-09-30 17:13:01 -07:00
Mark Nottingham
1b24fc6678
Consume HTTP trailing headers
2010-09-30 16:30:40 -07:00
Ryan Dahl
c3bc48d451
Move the http client's initParser() into prototype
2010-09-30 11:41:50 -07:00
Ryan Dahl
069d973d74
Remove require('buffer') in built-in libraries.
2010-09-28 02:31:31 -07:00
Fedor Indutny
5535aa3d51
Fixed 'upgrade' event for httpclient
...
onend and ondata was cleaning on parser end
2010-09-23 10:29:20 -07:00
Mikeal Rogers
cc1d61cbb3
HTTP: close connection on connection:close header.
...
rnewson found a good bug in keep-alive. we were only using the request
headers we send to enable/disable keep-alive but when the server sends
Connection: close we need to close down the connection regardless.
I wrote up a patch the Robert verified makes all his test client code work
now and I also added a new unittest for it.
2010-09-22 10:17:07 -07:00
Ryan Dahl
db73c71280
Pass correct message in HTTP client upgrade
...
Simplify and correct test.
Fix by Fedor Indutny.
2010-09-19 11:55:18 -07:00
Ryan Dahl
a63fd0fe56
Remove deprecation warnings in http module
2010-09-16 14:49:12 -07:00
Sam Stephenson
6560ab9073
Send multiple header lines in ServerResponse#writeHead when header values are arrays
2010-09-15 15:55:30 -07:00
Mark Nottingham
4fe3007a1a
Support for outgoing HTTP trailing headers
2010-09-14 15:20:45 -07:00
Ryan Dahl
44a287987e
Safe constructors: http.Server and http.Client
2010-08-27 13:58:52 -07:00
Ryan Dahl
2982e75a0b
set-cookies header is an array of values. always
2010-08-21 16:34:38 -07:00
Ryan Dahl
9acd76ed6e
Don't throw on HEAD requests
2010-08-12 10:06:52 -07:00
Ryan Dahl
1c5d5e0b72
uppercase request methods
2010-08-09 21:23:52 -07:00
Ben Noordhuis
4b19bd2896
Client.onend: Anticipate that the HTTP parser object is uninitialized when the client setup failed.
2010-08-02 11:25:53 -07:00
Mikeal Rogers
3214116be6
Implement keep-alive for http.Client
...
Send the 'Connection: keep-alive' header in your request to enable.
2010-08-01 22:34:17 -07:00
Ryan Dahl
02729d4af7
instanceof Buffer to Buffer.isBuffer()
2010-07-15 15:58:35 -07:00
Ryan Dahl
6a57a42109
Use Array.isArray instead of instanceof
2010-07-15 10:35:29 -07:00
Dmitriy Shalashov
70a8fb3763
Fix headers with empty value.
2010-07-07 18:46:24 +02:00
Peter Griess
51bd1b4483
Only concatenate some incoming HTTP headers.
...
- Concatenate 'accept', 'accept-charset', 'accept-encoding',
'accept-language', 'connection', 'cookie', and 'x-*' headers.
- For all others, drop duplicates.
2010-06-21 12:01:50 -07:00
Peter Griess
187f191558
Support 'upgrade' event in HTTP client.
...
- Add a unit test for client HTTP upgrade.
- Move around unit tests for server HTTP upgrade.
2010-06-16 11:27:56 -07:00
Ryan Dahl
6bed15e074
Refactor: Utf8Decoder -> StringDecoder
...
Instead of just decoding Utf8, this will proxy requests to buffer.toString()
for other encodings. This makes for a simpler interface.
2010-06-15 18:19:27 -07:00
Ryan Dahl
55a6f01732
Server responses should have a body if HEAD request
2010-06-02 15:07:15 -07:00
Ryan Dahl
80a8e71fe0
Insert some hot paths into HTTP
2010-05-27 20:43:56 -07:00
Ryan Dahl
74b7fa29a1
Refactor HTTP
...
Allow throttling from outgoing messages.
2010-05-27 20:41:57 -07:00
Ryan Dahl
29e867aaa0
Simplify a few internal HTTP events.
2010-05-26 13:37:33 -07:00
Sam Hughes
895f89d62a
Avoided sending empty chunkedEncoding chunks in the middle of http responses
2010-05-25 22:58:17 -07:00
Ryan Dahl
15ec99ec59
Fix issue 89, parsing responses to HEAD requests
...
Test from Mark Hansen (mark at markhansen.co.nz)
2010-05-25 19:25:40 -07:00
Ryan Dahl
35c14f637e
In HTTP parser, proxy return value of onHeadersComplete
2010-05-25 19:25:38 -07:00
Ben Noordhuis
b58db3cd73
Added reason phrases for a bunch of HTTP status codes.
2010-05-23 17:02:35 -07:00
Ryan Dahl
cbd2c3945b
Throwing in a callback should kill the process
...
There is a difference between errors which happen to a socket - like
receiving EPIPE - an exceptional situation but ultimately okay and the
situation where code throws in a callback - which is not okay.
Fixes test/simple/test-http-exceptions.js
TODO: explain this in docs.
2010-05-20 15:23:36 -07:00
Ryan Dahl
2663c69f8d
Fix utf8stream references
2010-05-18 09:32:28 -07:00
Felix Geisendörfer
f987ecf45b
Use Utf8Stream for http Streams with utf8 encoding
2010-05-18 01:04:39 -07:00
Ryan Dahl
d0128787e7
Deprecate sendHeader() and writeHeader(), ppl should use writeHead()
2010-05-12 12:15:58 -07:00
Ryan Dahl
7a2e6d674a
Default to 2 second timeout for http servers
...
Taking a performance hit on 'hello world' benchmark by enabling this by
default, but I think it's worth it. Hopefully we can improve performance by
resetting the timeout less often - ideally a 'hello world' benchmark would
only touch the one timer once - if it runs in less than 2 seconds. The rest
should be just link list manipulations.
2010-05-12 11:49:28 -07:00
Ryan Dahl
8ab238e7de
Revert "destroy instead of end http connection at end of pipeline"
...
This reverts commit 4ce1e1fca5
.
To fix test-http-full-response.js. Clearly this is not the correct solution.
Probably need idle timeouts.
2010-05-09 21:29:51 -07:00
Ryan Dahl
4ce1e1fca5
destroy instead of end http connection at end of pipeline
2010-05-06 09:15:44 -07:00
Thomas Lee
3674563dd5
Fix a bug in http.Client where parsers may be prematurely released back to the free pool.
2010-05-06 00:44:07 -07:00
Ryan Dahl
453c9e6411
Fix whitespace
2010-05-04 21:35:46 -07:00
isaacs
3892628657
Emit a better error message when something strange is sent to OutgoingMessage#write
2010-05-04 18:37:00 -07:00
Ryan Dahl
b5bdf9434b
Add another http upgrade test
2010-05-03 11:23:36 -07:00
Ryan Dahl
f0fec7352a
Don't emit error twice from http.Client
2010-05-03 10:53:52 -07:00
Micheil Smith
aee226b243
Fixing the 1 byte off error in http.Server's upgradeHead
...
(And fix up some style issues)
2010-05-01 18:05:53 -07:00
Ryan Dahl
67fb0ece6b
Fix deprecation message
2010-05-01 14:45:14 -07:00
Micheil Smith
d6110fbd11
Making requestListener for the construction of a http.Server optional, as it is for net.Server
2010-05-01 11:56:00 -07:00
Micheil Smith
f990f24ad3
Implementing the event emit for Upgrade requests, with tests.
2010-05-01 11:52:40 -07:00
Ryan Dahl
3b323027be
http server emits 'clientError'
2010-04-30 10:29:35 -07:00