From 93d78107bb6889bc26dd4ec44b4f5c454af3e281 Mon Sep 17 00:00:00 2001 From: Phil Pluckthun Date: Sun, 1 Feb 2026 22:48:54 +0000 Subject: [PATCH] fix: Add `Content-Length: 0` for empty `PATCH` bodies (#23) --- .changeset/every-coats-decide.md | 5 +++++ src/fetch.ts | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 .changeset/every-coats-decide.md diff --git a/.changeset/every-coats-decide.md b/.changeset/every-coats-decide.md new file mode 100644 index 0000000..7c4ffb5 --- /dev/null +++ b/.changeset/every-coats-decide.md @@ -0,0 +1,5 @@ +--- +'fetch-nodeshim': patch +--- + +Set `Content-Length: 0` when `response.body` is `null` for `PATCH` as well diff --git a/src/fetch.ts b/src/fetch.ts index 601e46b..2825bbd 100644 --- a/src/fetch.ts +++ b/src/fetch.ts @@ -253,7 +253,10 @@ async function _fetch( if (requestBody.contentType) requestHeaders.set('Content-Type', requestBody.contentType); - if (requestBody.body == null && (method === 'POST' || method === 'PUT')) { + if ( + requestBody.body == null && + (method === 'POST' || method === 'PUT' || method === 'PATCH') + ) { requestHeaders.set('Content-Length', '0'); } else if (requestBody.body != null && requestBody.contentLength != null) { requestHeaders.set('Content-Length', `${requestBody.contentLength}`); -- 2.51.2