HTTP/3 CONNECT requests, body, and trailers

RFC 9114 says:

> The request stream remains open at the end of the request to carry the data to be transferred. A CONNECT request that does not conform to these restrictions is malformed.

-- https://datatracker.ietf.org/doc/html/rfc9114#section-4.4-5

Reading on a little more, it's clear that the request we're talking about isn't a normal "headers, body, trailers" request, but you might be forgiven for starting to think otherwise.

Would it be worth an editorial erratum? I'd suggest the addition:

> A CONNECT request consists of a header block only, it cannot contain a body; similarly a CONNECT response consists of a header block only.  CONNECT requests and responses can include trailers, however the use of trailers is inadvisable. Trailers can interfere with the closing of the associated TCP connection as they have to be sent prior to signaling connection close.

The text in HTTP/2 is a little better in this regard, but the note about trailers does apply there as well.  (https://datatracker.ietf.org/doc/html/rfc9113#section-8.5)

Received on Thursday, 5 February 2026 01:40:13 UTC