Keep the final response authoritative
03The server can learn new facts after sending a hint. An early field may change or disappear, and a field absent from the hint may still appear in the final response.
Another example’s 103 has only Link, while its final response includes Content-Type: text/html. Missing in the hint is not a prediction of missing in the final response.
Source for this drawing: RFC 8297 · Read RFC section 2 ↗
New to this? Start hereA quick picture + helpful background
A message needs an address.
Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.
Helpful first, if these ideas are unfamiliar
These pictures are analogies to help you learn. The linked RFC explains the actual rules.
Terms in this drawing
Related RFCs and changes
“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.
Do not merge speculative fields into the final answer.
- Header fields in a 103 provide hints only; they do not replace the fields on the final response. Typically fields repeat, but they need not.
- A server MAY hint only some expected final fields. A client SHOULD NOT interpret a field’s absence from the hint as speculation that it is unlikely to appear in the final response.
- Aside from performance optimization, evaluation of the 103 MUST NOT affect final-response processing. It cannot turn a later error into success or supply a final field that was omitted.
The replacement style link, 403 and absent-then-present Content-Type are independent fictional outcomes, not three final responses to one request. Preparatory work may be unnecessary or unused. These examples do not say clients must preload everything or apply hinted cache/security policy before knowing the final response. Target labels abbreviate the URI; complete Link syntax appears in the field and multiple-hint chapters.
Read the RFC section ↗