Re: [XHR2] responseType / response / overrideMimeType proposal

Anne, for what it's worth, in my initial implementation in WebKit, I've
allowed .responseText to be accessed (without throwing) if .responseType ==
"text".
Likewise, .responseXML can be accessed (without throwing) if .responseType
== "document"

I don't have a strong opinion either way.  But it wasn't hard for us to
implement that way.

Chris

On Mon, Nov 29, 2010 at 9:21 AM, Anne van Kesteren <annevk@opera.com> wrote:

> Before I write it out it would be nice to assess whether there is consensus
> on this. From the current draft, asBlob, responseBlob, and
> responseArrayBuffer are removed. response and responseType are added.
>
> responseType can be set when the state is either OPENED or HEADERS_RECEIVED
> and must be set before send() is invoked for synchronous requests. When set
> at an inappropriate point it throws INVALID_STATE_ERR much like the other
> attributes. (This means responseType can be set during the request,
> specifically after all headers are available to the author so she/he can
> make an informed choice what to set responseType to.)
>
> Depending on the type response either starts returning at LOADING or DONE.
>
> overrideMimeType can be invoked whenever responseType can be set.
>
> responseType has these constants:
>
>  RESPONSE_DEFAULT
>  RESPONSE_TEXT
>  RESPONSE_DOCUMENT
>  RESPONSE_BLOB
>  RESPONSE_ARRAY_BUFFER
>
> When set to anything but RESPONSE_DEFAULT responseText and responseXML will
> throw INVALID_STATE_ERR. When set to RESPONSE_DEFAULT response returns what
> responseText returns. (This seems mildly better than throwing, but I can be
> convinced to make it throw instead.)
>
>
> --
> Anne van Kesteren
> http://annevankesteren.nl/
>
>

Received on Monday, 29 November 2010 23:00:47 UTC