Saturday, November 20, 2010

AJAX-XMLHttpRequest Part2

(Link with the post AJAX-XMLHttpRequest 1)

First, need to know how to create an XMLHTTPRequest object.
With IE(The way of creating the object depend on the web browser), the request looks like:

http=new ActiveXObject("Microsoft XMLHTTP");

whereas in a standards-compliant browser object can be instantiated as:

http = new XMLHttpRequest();

Then an event handler which will be called via some event on user's page need to be written and it will handle sending the request for data to the server.

In the following example event handler called updateData ,a request of the server is made by using a GET method to an appropriate server-side script.A XMLHTTPRequest object has created and called it http:

function updateData(param) {

var myurl = [here I insert the URL to my server script];

http.open("GET", myurl , true); //This is to open the connection with the server.

http.onreadystatechange = useHttpResponse;

http.send(null);

}

http.open method: The Http request of the XMLHttpRequest object initialize through the open method. This method invoke prior to the actual sending of a request to validate the request method and URI user information to be used for the request. This method does not assure that the URL exists or the user information is correct.

The first parameter of the method is a string indicating the HTTP request method to use. It can be either a GET,POST,PUT,DELETE or HEAD.The second parameter of the method is another string, this one indicating the URL of the HTTP request.

The third parameter, a boolean value indicating whether or not the request will be asynchronousAn asynchronous request ("true") will not wait on a server response before continuing on with the execution of the current script. It will instead invoke the onreadystatechange evnt listner of the XMLHttpRequest object throughout the various stages of the request.

A synchronous request ("false") however will block execution of the current script until the request has been completed, thus not invoking the onreadystatechange event listener.

No comments:

Post a Comment