- From: Glenn Adams <glenn@skynav.com>
- Date: Tue, 27 Mar 2012 16:35:17 -0600
- To: Boris Zbarsky <bzbarsky@mit.edu>
- Cc: public-webapps@w3.org
- Message-ID: <CACQ=j+dnBLNc34K1KuNZN0gWHuZLwPi1awx_9xdQH2QkVNWZQg@mail.gmail.com>
On Tue, Mar 27, 2012 at 4:17 PM, Boris Zbarsky <bzbarsky@mit.edu> wrote:
> On 3/27/12 2:46 PM, Glenn Adams wrote:
>
>> Is this really a problem?
>>
>
> Yes. We've run into bug reports in the past of sites sending some pretty
> random bytes in the HTTP status text, then reading .statusText from script.
> If we want interop here, we need to define the conversion.
>
>
> HTTP defines the form and encoding of the status text
>>
>
> Except it doesn't, last I checked. Has that changed?
RFC2616 states (on pages :
Fielding, et al. Standards Track [Page 39]
Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF
Fielding, et al. Standards Track [Page 40]
Reason-Phrase = *<TEXT, excluding CR, LF>
Fielding, et al. Standards Track [Page 15]
The TEXT rule is only used for descriptive field contents and values
that are not intended to be interpreted by the message parser. Words
of *TEXT MAY contain characters from character sets other than ISO-
8859-1 [22] only when encoded according to the rules of RFC 2047
[14].
TEXT = <any OCTET except CTLs,
but including LWS>
This makes it pretty clear that Reason Phrase must use ISO-8859-1 (Latin1)
unless it uses the encoded-word extension from RFC2047. If the latter is
used, then a charset must be designated.
Given this, I don't see any spec bug (though there may be implementation
bugs in case the client side does not correctly implement the above HTTP
requirements).
Received on Tuesday, 27 March 2012 22:36:06 UTC