Skip to content

Commit

Permalink
doc: add note about clientError writable handling
Browse files Browse the repository at this point in the history
PR-URL: #33308
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
  • Loading branch information
ShogunPanda authored and codebytere committed May 16, 2020
1 parent 4f0cd64 commit b41affb
Showing 1 changed file with 15 additions and 0 deletions.
15 changes: 15 additions & 0 deletions doc/api/http.md
Original file line number Diff line number Diff line change
Expand Up @@ -1037,6 +1037,21 @@ ensure the response is a properly formatted HTTP response message.
correctly;
* `rawPacket`: the raw packet of current request.

In some cases, the client has already received the response and/or the socket
has already been destroyed, like in case of `ECONNRESET` errors. Before
trying to send data to the socket, it is better to check that it is still
writable.

```js
server.on('clientError', (err, socket) => {
if (err.code === 'ECONNRESET' || !socket.writable) {
return;
}

socket.end('HTTP/1.1 400 Bad Request\r\n\r\n');
});
```

### Event: `'close'`
<!-- YAML
added: v0.1.4
Expand Down

0 comments on commit b41affb

Please sign in to comment.