W3C home > Mailing lists > Public > public-webapps@w3.org > January to March 2013

RE: [XHR] remove "user cancels request"

From: Jungkee Song <jungkee.song@samsung.com>
Date: Mon, 25 Feb 2013 15:49:40 +0900
To: 'Timmy Willison' <timmywillisn@gmail.com>, 'Glenn Maynard' <glenn@zewt.org>, 'Anne van Kesteren' <annevk@annevk.nl>
Cc: 'WebApps WG' <public-webapps@w3.org>
Message-id: <058d01ce1324$48fe7870$dafb6950$@samsung.com>
> From: Timmy Willison [mailto:timmywillisn@gmail.com] 
> Sent: Monday, February 25, 2013 2:55 AM
> > On Feb 24, 2013, at 11:18 AM, Glenn Maynard <glenn@zewt.org> wrote:
> > > On Sun, Feb 24, 2013 at 8:18 AM, Anne van Kesteren <annevk@annevk.nl> wrote:
> > > Currently the XMLHttpRequest Standard special cases the condition
> > > where the end user terminates the request. Given that there's less and
> > > less likely to be UI for that kind of feature, does it still make
> > > sense to expose this distinction from a network error in the API? I
> > > think we should merge them.
> > > 
> > > http://xhr.spec.whatwg.org/
> > 
> > I didn't even know about that behavior.  I've always assumed that the only way onabort happens is as a result of my calling abort().  I don't think breaking that assumption would break my code, but it's a rare, untested code path.  I doubt other developers test it either.  I agree that users killing a network request should look like a network error, and in general the API should guarantee that onabort is only fired as a result of a call to abort().
> > 

According to the current spec, it is already the case that onabort() is called only when client.abort() is explicitly called (including CORS requests.) onerror() is getting called in actual network errors such as DNS error, TLS negotiation failure, cross-origin access violation, etc.

I am not sure what conditions Anne exactly propose to remove from the spec. I can think of only three scenarios where the end user *terminates* the request: calling open(), calling abort() or explicitly stop in browser chrome. I don't think client.open() and explicit browser stop are what Anne is talking about.

Anne, could you elaborate what part of the text are you pointing?

If it's the case that you want to merge abort into error, I tend to disagree as there can be use cases explicitly putting "cancel" button in UI that should be distinguished from network initiated errors.


> +1
> > -- 
> > Glenn Maynard
> - Timmy
Received on Monday, 25 February 2013 06:50:11 UTC

This archive was generated by hypermail 2.3.1 : Friday, 27 October 2017 07:26:52 UTC