The XMLHttpRequest.timeout
property is an unsigned long
representing the number of milliseconds a request can take before automatically being terminated. The default value is 0, which means there is no timeout. Timeout shouldn't be used for synchronous XMLHttpRequests requests used in a document environment or it will throw an InvalidAccessError
exception. When a timeout happens, a timeout event is fired.
Note: You may not use a timeout for synchronous requests with an owning window.
Using a timeout with an asynchronous request
In Internet Explorer, the timeout property may be set only after calling the open() method and before calling the send() method.
Example
var xhr = new XMLHttpRequest();
xhr.open('GET', '/server', true);
xhr.timeout = 2000; // time in milliseconds
xhr.onload = function () {
// Request finished. Do processing here.
};
xhr.ontimeout = function (e) {
// XMLHttpRequest timed out. Do something here.
};
xhr.send(null);
Specifications
Specification | Status | Comment |
XMLHttpRequest | Living Standard | WHATWG living standard |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
timeout
|
Chrome
Full support 29 |
Edge
Full support 12 |
Firefox
Full support 12 |
IE
Full support 8 |
Opera Full support 17 Full support 17 No support 12 — 16 |
Safari
Full support 6.1 |
WebView Android
Full support ≤37 |
Chrome Android
Full support 29 |
Firefox Android
Full support 14 |
Opera Android Full support 18 Full support 18 No support 12 — 16 |
Safari iOS
Full support 7 |
Samsung Internet Android
Full support 2.0 |
Legend
- Full support
- Full support
XMLHttpRequest.timeout by Mozilla Contributors is licensed under CC-BY-SA 2.5.