Re: 103 (Early Hints) vs. response headers

2017-02-24 11:16 GMT+09:00 Vasiliy Faronov <vfaronov@gmail.com>:
> Kazuho, thank you for clarifying.
>
>
> On Fri, Feb 24, 2017 at 4:34 AM, Kazuho Oku <kazuhooku@gmail.com> wrote:
>> I think that the client should discard it, because (contrary to the
>> expectation) the server did not include the Warning header in the
>> final response, and because the draft states that:
>>
>>    However, the evaluation MUST NOT affect
>>    how the final response is processed; the client must behave as if it
>>    had not seen the informational response.
>
> This makes 103 a special case in HTTP processing, sort of like HEAD or
> 204. A client that understands 1xx, but doesn't know 103 specifically,
> would handle such a header differently.
>
> If, instead, you defined headers on a 103 response as applying *both*
> to the 103 response *and* to the final response (speculatively), then
> there would be no such special-casing, while rel=preload would work
> the same.

Thank you for the suggestion. I feel sympathetic to your concern, and
the approach sounds like an interesting idea to look into.

If we want to omit special casing spec-wise, IMO the only thing that
we can do is to state is that a client MAY process the headers of a
103 response as part of the informational response (as well as
speculatively applying them to the final response). This is because a
client that does not recognize a 103 response is required to treat it
as if it was a 100 response [1], and because a client is allowed to
just ignore a 100 response [2].

Is that what you are suggesting?

I would like to argue that it might be too vague, and that it would be
better to have a clear statement that headers of 103 must be only
considered a speculation of the final response. Such definition is
unlikely to cause an interoperabiilty issue under the premise that
most if not all clients existing today just throw away the headers of
a 100 response.

[1] https://tools.ietf.org/html/rfc7231#section-6
[2] https://tools.ietf.org/html/rfc7231#section-6.2.1

> (Content-* might still need special-casing for 103, but they
> are already defined in terms of "associated representation" for the
> special case of HEAD.)
>
> Of course, this won't be a problem in practice if 103 is only used for
> rel=preload. This isn't causing me any trouble, just something I
> wanted to point out for your consideration.
>
>
> --
> Vasiliy



-- 
Kazuho Oku

Received on Monday, 27 February 2017 03:18:57 UTC