Thursday, April 6th, 2006
XMLHttpRequest is a popular tool for making dynamic requests on webpages to remote servers. It is the cornerstone for what has come to be known as AJAX. It was originally implemented by Internet Explorer 5.0 as an ActiveX object, followed by Mozilla 1.0 as a native object, and then Opera 8.0 as a simple native frontend to the W3C-standardized DOM Load and Save model, currently unsupported by Internet Explorer and Mozilla browsers. Internet Explorer 7 will offer the object natively like Mozilla and Opera.
Although DOM Load and Save became a W3C Recommendation in April 2004, its lack of support and relative difficulty of use has made it less attractive to web developers than the much simpler XMLHttpRequest object. Two years later, the W3C has acknowledged the popularity of XMLHttpRequest and is now attempting to standardize a minimal implementation of the object based on the WHATWG’s research on existing behavior in modern web browsers.
From the draft:
The XMLHttpRequest object is implemented today, in some form, by many popular Web browsers. Unfortunately the implementations are not completely interoperable. The goal of this specification is to document a minimum set of interoperable features based on existing implementations, allowing Web developers to use these features without platform-specific code. In order to do this, only features that are already implemented are considered. In the case where there is a feature with no interoperable implementations, the authors have specified what they believe to be the most correct behavior.
This specification is currently a working draft and is thus subject to change.