Skip to content

Commit

Permalink
fix(sendNoContent): avoid overriding status code if event is already …
Browse files Browse the repository at this point in the history
…handled
  • Loading branch information
pi0 committed Aug 8, 2023
1 parent 67a4132 commit 3f6d99e
Showing 1 changed file with 10 additions and 7 deletions.
17 changes: 10 additions & 7 deletions src/utils/response.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,18 @@ export function send(event: H3Event, data?: any, type?: string): Promise<void> {
* @param event H3 event
* @param code status code to be send. By default, it is `204 No Content`.
*/
export function sendNoContent(event: H3Event, code = 204) {
event.node.res.statusCode = sanitizeStatusCode(code, 204);
// 204 responses MUST NOT have a Content-Length header field (https://www.rfc-editor.org/rfc/rfc7230#section-3.3.2)
if (event.node.res.statusCode === 204) {
event.node.res.removeHeader("content-length");
export function sendNoContent(event: H3Event, code?: number) {
if (event.handled) {
return;
}
if (!event.handled) {
event.node.res.end();
const _code = sanitizeStatusCode(code, 204);
// 204 responses MUST NOT have a Content-Length header field
// https://www.rfc-editor.org/rfc/rfc7230#section-3.3.2
if (_code === 204) {
event.node.res.removeHeader("content-length");
}
event.node.res.writeHead(_code);
event.node.res.end();
}

export function setResponseStatus(
Expand Down

0 comments on commit 3f6d99e

Please sign in to comment.