XMLHttpRequest helps browser in transferring data between a browser and server. Without refreshing a full page, it provides a simple technique to fetch data from a server. The best part of XMLHttpRequest is that updates a part of the web page without interrupting what the user is performing.
Following are the steps that you must follow to build AJAX applications using XMLHttpRequest-
var request = new XMLHttpRequest(); request.onreadystatechange = function(){ if(this.readyState == 4 && this.status == 200){ var response = this.responseText; alert(response); } }; request.open("GET", "url", true); request.send();
Properties | Explanation |
---|---|
onreadystatechange | Use to specify the function name that will be invoked whenever the value of readyState changes. |
readyState | It contains the status of XMLHttpRequest object. The Range of this property is from 0 to 4.
0- request is not generated 1- connection with the server is made 2- the server receives request 3- request is processing 4- response is received, and request is finished |
responseText | It stores the response data in the form of string. |
responseXML | It stores the XML data received in response. |
status | Returns the status code(200 for OK, 403 for Forbidden, 404 for Not Found, and so on) |
statusText | It holds the text of the status. |
Functions | Explanation |
---|---|
abort() | This function is used to cancel the current request. |
getAllResponseHeaders() | It returns all the response headers in the form of a string. |
getResponseHeader() | This function returns the value of the specified header. |
open(method,url,async,uname,pswd) | This method is used to initialized the request. It takes the following arguments -
method- the type of HTTP method such as GET, POST, etc. url- Specifies the file on the server to send the request to. async- It is optional, and by default it is true. A false value indicates that the request must be handled synchronously and true value indicates asynchronously. username & password- Optional and by default it is null. Use for authentication purposes. |
send(string) | It sends the request to the server. If the HTTP method of a request is POST, then the argument of this function is not ignored. |
setRequestHeader(header, value) | This methods must be called before send() method and after open() method. It is used to set the header of HTTP request. |