Closed
Bug 926208
Opened 11 years ago
Closed 11 years ago
xmlhttprequest timeout doesn't work
Categories
(Core :: DOM: Core & HTML, defect)
Tracking
()
RESOLVED
INVALID
People
(Reporter: aquilax, Unassigned)
Details
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0 (Beta/Release)
Build ID: 20130910160258
Steps to reproduce:
I have a user script, which send xml http request to a rest service, the response can be very big and the service can take over one minute to reply, so I have added a timeout of two minutes to the request.
var xhr=new XMLHttpRequest();
xhr.timeout=2*60*1000;
xhr.ontimeout=ontimeoutRequest;
Actual results:
The request ends after one minute, I see it in firebug, and the timeout event never fire.
Expected results:
The request should wait two minutes before timeout and after two minutes fire the timeout event.
Comment 1•11 years ago
|
||
Aquila, this may be a dupe of bug 805571 or bug 868697. I am not sure if the documentation is incorrect or if there is a bug related to the request timeouts. You might take a look for now at the comments in bug 525816 as well.
Component: Untriaged → DOM
Product: Firefox → Core
Comment 2•11 years ago
|
||
Aquila, can you post the entirety of the code you use to set up and dispatch the XHR?
Also, if Mozilla's own networking code aborts the request before the timeout is reached, there's really no support for that. (No one to my knowledge has tried firing a XHR with a timeout of an hour, or a day, for example... so I don't know how Mozilla code would react.)
Comment 3•11 years ago
|
||
If the request is processed within one minute, why should a 2 minute timeout fire ever?
Looks like the spec is odd here. Something has happened to it, since I think it was less wrong
at some point. Right now it doesn't normatively define when to dispatch timeout event.
Flags: needinfo?(annevk)
Comment 4•11 years ago
|
||
Nm, it is there. "timeout error". So the event should be dispatched while we're processing the
request. But the spec should be more clear.
Flags: needinfo?(annevk)
Comment 5•11 years ago
|
||
Based on the comment 0 this is invalid, but if there is a testcase which shows timeout
isn't dispatched while the request is still active, please reopen.
Status: UNCONFIRMED → RESOLVED
Closed: 11 years ago
Resolution: --- → INVALID
@Alex Vincent
The code is very simple, is generic and used from many other functions.
var xhr=new XMLHttpRequest();
xhr.open("GET",url);
xhr.onload=requestLoad;
xhr.timeout=2*60*1000;
xhr.ontimeout=requestTimeout;
xhr.send();
Timeout is in milliseconds, at least according to the documentation https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest
@Olli Pettay
The timeout is two minutes but after one minute the request timeouts, this is visible in firebug.
It's not so easy to create a test case, you must set up a web service that doesn't end the request and keep the connection open, something likes the long polling (http://en.wikipedia.org/wiki/Push_technology#Long_polling).
Assignee | ||
Updated•6 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•