Code change:
5. HTTP messages use key/value pairs to convey data about the message, <del> its payload, the target resource, or the connection (i.e., control data).  They are called "HTTP fields" or just " </del> <ins> its payload, the target resource, or the connection.  They are called "HTTP fields" or just " </ins> ". <del> Every message can have two separate areas that such fields can occur within; the " </del> <ins> Fields that are sent/received before the message body are referred to as "header fields" (or just "headers", colloquially) and are located within the " </ins> <del> " (or just "header section") preceding the message body and containing "header fields" (or just "headers", colloquially) and the " </del> <ins> " of a message.  We refer to some named fields specifically as a "header field" when they are only allowed to be sent in the header section. Fields that are sent/received after the header section has ended (usually after the message body begins to stream) are referred to as "trailer fields" (or just "trailers", colloquially) and located within a " </ins> <del> " (or just "trailer section") after the message body containing "trailer fields" (or just "trailers" colloquially).  Header fields are more common; see trailer.fields for discussion of the applicability and limitations of trailer fields. </del> <ins> ".  One or more trailer sections are only possible when supported by the version of HTTP in use and enabled by an extensible mechanism for framing message sections. </ins> Both sections are composed of any number of "

Related discussion:
text: Does this mean it's now valid to interleave HTTP/2 DATA frames and HEADER frames?
Does this mean we cannot implement this on HTTP/2?
The feature was removed during WGLC, but no -- it would have required a new frame type.
Okay, so chunk extensions remains a unique feature of HTTP/1 chunked encoding and there is no plan to expand that further?
Yes.
As discussed in and URL, mid-stream trailers (i.e., those that arrive before the end of the payload body) are interesting. A few things to discuss: [ ] What are some potential use cases?[ ] We recently stopped automatically combining trailers into headers, as that created a lot of issues. What about these -- are they yet again distinct from trailers as well as headers? Or can they be "downgraded" into trailers automatically? In other words, when transitioning from a hop that supports these from one that doesn't, are they just dropped onto the floor?[ ] Related - is the expectation that implementations will create separate APIs for these, or would it be that trailers are just available / writable early?[ ] What relationship does one of these have to the payload body? E.g., could I write one that "knows" exactly where in the body it occurs, so that it could sign a chunk of the body relative to it? Or could a handling implementation change its ordering in relation to body bytes?
Some preliminary considerations. Incremental checksums eg. Service management (eg. convey the ETA of the transfer, ...) Sending signatures of partial body (in mid-stream) has some complexities respect to sending a signature of the whole message in the header/trailer section, and requires a security URL trailers, when used for integrity can't be dropped without informing the user agent They probably need to be defined as 1#field-item because mid-stream trailers will be sent multiple times (eg. one per chunk) Whenever they are tied to the partial transmitted representation, they will eventually be unuseful when merged, unless they have some associative propertyThey will be especially useful when tied to a portion of the body They will be significantly less useful when not tied to a portion of the body
Potential use cases mostly limited to long-lived streaming traffic, i.e.