Make HTTPServer ignore responses that cannot be sent
This commit is contained in:
@@ -255,6 +255,14 @@ export class Response {
|
||||
await this.sent$.next(this)
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns true if the response can still be sent. False if it has been sent
|
||||
* or the connection has been destroyed.
|
||||
*/
|
||||
public canSend(): boolean {
|
||||
return !(this.responseEnded || this.serverResponse.destroyed)
|
||||
}
|
||||
|
||||
/**
|
||||
* Mark the response as ended and close the socket.
|
||||
*/
|
||||
|
||||
@@ -128,7 +128,9 @@ export class HTTPServer extends Unit {
|
||||
await error(new ErrorWithContext('Unknown error occurred.', { e }))
|
||||
}
|
||||
|
||||
await extolloReq.response.send()
|
||||
if ( extolloReq.response.canSend() ) {
|
||||
await extolloReq.response.send()
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user