diff options
author | Fedor Indutny <fedor@indutny.com> | 2016-01-06 17:00:27 -0500 |
---|---|---|
committer | Fedor Indutny <fedor@indutny.com> | 2016-01-07 03:39:15 -0500 |
commit | 5f76b24e5ee440b7c2d2bdc74a9bb94374df9f2a (patch) | |
tree | c71a3fa6e69e57b9a50ad51188e7a2e9a19f53c7 /doc | |
parent | 1ab6b21360d97719b3101153fb164c0c3eddf038 (diff) | |
download | android-node-v8-5f76b24e5ee440b7c2d2bdc74a9bb94374df9f2a.tar.gz android-node-v8-5f76b24e5ee440b7c2d2bdc74a9bb94374df9f2a.tar.bz2 android-node-v8-5f76b24e5ee440b7c2d2bdc74a9bb94374df9f2a.zip |
http: overridable `clientError`
Make default `clientError` behavior (close socket immediately)
overridable. With this APIs it is possible to write a custom error
handler, and to send, for example, a 400 HTTP response.
http.createServer(...).on('clientError', function(err, socket) {
socket.end('HTTP/1.1 400 Bad Request\r\n\r\n');
socket.destroy();
});
Fix: #4543
PR-URL: https://github.com/nodejs/node/pull/4557
Reviewed-By: Brian White <mscdex@mscdex.net>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/api/http.markdown | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/doc/api/http.markdown b/doc/api/http.markdown index aedc35208f..34e3417b51 100644 --- a/doc/api/http.markdown +++ b/doc/api/http.markdown @@ -421,6 +421,11 @@ not be emitted. `function (exception, socket) { }` If a client connection emits an `'error'` event, it will be forwarded here. +Listener of this event is responsible for closing/destroying the underlying +socket. For example, one may wish to more gracefully close the socket with an +HTTP '400 Bad Request' response instead of abruptly severing the connection. + +Default behavior is to destroy the socket immediately on malformed request. `socket` is the [`net.Socket`][] object that the error originated from. |