Do not treat Content-Length=0 as empty when Transfer-Encoding is chunked#2572
Merged
drwpow merged 7 commits intoopenapi-ts:mainfrom Feb 11, 2026
Merged
Do not treat Content-Length=0 as empty when Transfer-Encoding is chunked#2572drwpow merged 7 commits intoopenapi-ts:mainfrom
drwpow merged 7 commits intoopenapi-ts:mainfrom
Conversation
…on-chunked responses Some HTTP servers incorrectly send `Content-Length: 0` together with `Transfer-Encoding: chunked`. According to RFC 7230, chunked transfer encoding overrides Content-Length and the body may still contain data. Previously, the client treated any response with Content-Length=0 as having an empty body, which caused valid chunked responses to be discarded. This change only treats Content-Length=0 as empty when the response is not chunked, preserving correct behavior for misconfigured servers.
👷 Deploy request for openapi-ts pending review.Visit the deploys page to approve it
|
🦋 Changeset detectedLatest commit: 0fe1138 The changes in this PR will be included in the next version bump. This PR includes changesets to release 2 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Contributor
Author
|
This also improves compatibility with CapacitorJS — the @capacitor/http plugin can send both Content-Length: 0 and Transfer-Encoding: chunked, and with this change those responses work as expected. |
Contributor
|
This looks great, thank you! Can you add a changeset (see comment)? |
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Some HTTP servers incorrectly send both:
Content-Length: 0
Transfer-Encoding: chunked
Per RFC 7230, Transfer-Encoding: chunked takes precedence and the body may still contain data. Our previous logic treated any Content-Length=0 response as empty, causing valid responses from misconfigured servers to be incorrectly ignored.
This change updates the empty-body detection logic to only treat Content-Length=0 as empty when the response is not chunked.
Changes
What does this PR change? Link to any related issue(s).
How to Review
How can a reviewer review your changes? What should be kept in mind for this review?
Checklist
docs/updated (if necessary)pnpm run update:examplesrun (only applicable for openapi-typescript)