<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DZone Snippets: XMLHttpRequest code</title>
    <link>http://snippets.dzone.com/posts</link>
    <pubDate>Mon, 08 Sep 2008 05:22:46 GMT</pubDate>
    <description>DZone Snippets: XMLHttpRequest code</description>
    <item>
      <title>Basic XMLHttprequest</title>
      <link>http://snippets.dzone.com/posts/show/5281</link>
      <description>Non-IE version:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;xhr = new XMLHttpRequest();                     &lt;br /&gt;xhr.open(&lt;br /&gt;    "GET",                          &lt;br /&gt;    "http://foo.com",       &lt;br /&gt;    true                            &lt;br /&gt;  );&lt;br /&gt;xhr.onreadystatechange=function(){&lt;br /&gt;    if (xhr.readyState==4){&lt;br /&gt;      if (xhr.status==200){&lt;br /&gt;        parseResponse(xhr);&lt;br /&gt;      }else{&lt;br /&gt;        //handle the HTTP error...&lt;br /&gt;      }&lt;br /&gt;    };&lt;br /&gt;  };&lt;br /&gt;xhr.send(null); &lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;// Basic XMLHttprequest (code from http://www.sitepoint.com/article/take-command-ajax)&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;function makeHttpRequest(url){&lt;br /&gt;&lt;br /&gt;   var http_request = false;&lt;br /&gt;&lt;br /&gt;   if (window.XMLHttpRequest) { // Mozilla, Safari,...&lt;br /&gt;   &lt;br /&gt;       http_request = new XMLHttpRequest();&lt;br /&gt;	   &lt;br /&gt;       if (http_request.overrideMimeType){&lt;br /&gt;	   &lt;br /&gt;           http_request.overrideMimeType('text/xml');&lt;br /&gt;		   &lt;br /&gt;       }&lt;br /&gt;	   &lt;br /&gt;   } &lt;br /&gt;   else if (window.ActiveXObject) { // IE&lt;br /&gt;   &lt;br /&gt;       try{&lt;br /&gt;	   &lt;br /&gt;           http_request = new ActiveXObject("Msxml2.XMLHTTP");&lt;br /&gt;		   &lt;br /&gt;       } &lt;br /&gt;	   catch(e){&lt;br /&gt;	   &lt;br /&gt;           try{&lt;br /&gt;		   &lt;br /&gt;               http_request = new ActiveXObject("Microsoft.XMLHTTP");&lt;br /&gt;			   &lt;br /&gt;           } &lt;br /&gt;		   catch (e) {}&lt;br /&gt;       }&lt;br /&gt;	   &lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   if (!http_request) {&lt;br /&gt;   &lt;br /&gt;       alert('Unfortunatelly you browser doesn\'t support this feature.');&lt;br /&gt;	   &lt;br /&gt;       return false;&lt;br /&gt;	   &lt;br /&gt;   }&lt;br /&gt;   http_request.onreadystatechange = function() {&lt;br /&gt;   &lt;br /&gt;       if (http_request.readyState == 4){&lt;br /&gt;	   &lt;br /&gt;           if (http_request.status == 200){&lt;br /&gt;&lt;br /&gt;				alert(http_request.responseText);&lt;br /&gt;&lt;br /&gt;           } &lt;br /&gt;		   else{&lt;br /&gt;		   &lt;br /&gt;               alert('There was a problem with the request.(Code: ' + http_request.status + ')');&lt;br /&gt;			   &lt;br /&gt;           }&lt;br /&gt;		   &lt;br /&gt;       }&lt;br /&gt;	   &lt;br /&gt;   };&lt;br /&gt;   &lt;br /&gt;   http_request.open('GET', url, true);&lt;br /&gt;   http_request.send(null);&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Tue, 25 Mar 2008 19:46:23 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/5281</guid>
      <author>Yansky (Yansky)</author>
    </item>
    <item>
      <title>Test if called from XMLHttpRequest</title>
      <link>http://snippets.dzone.com/posts/show/4291</link>
      <description>&lt;code&gt;&lt;br /&gt;if($_SERVER["HTTP_X_REQUESTED_WITH"] == 'XMLHttpRequest')&lt;br /&gt;{&lt;br /&gt;  // Called from XMLHttpRequest&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Thu, 12 Jul 2007 11:45:42 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/4291</guid>
      <author>sbnet (Stephane BRUN)</author>
    </item>
    <item>
      <title>XMLHttpRequest for IE</title>
      <link>http://snippets.dzone.com/posts/show/717</link>
      <description>XMLHttpRequest for IE&lt;br /&gt; - support onload event handler&lt;br /&gt; - you can modify "XMLHttpRequest.prototype" for debugging, tracing and AOP style programming.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;(function(){&lt;br /&gt;if(typeof ActiveXObject == "function" &amp;&amp; typeof XMLHttpRequest == "undefined"){&lt;br /&gt;	XMLHttpRequest = function(){&lt;br /&gt;		var self = this;&lt;br /&gt;		var props = "readyState,responseText,responseXML,status,statusText".split(",");&lt;br /&gt;		this.readyState  = 0;&lt;br /&gt;		this.__request__ = new ActiveXObject("Microsoft.XMLHTTP");&lt;br /&gt;		this.__request__.onreadystatechange = function(){&lt;br /&gt;			for(var i=0;i&lt;props.length;i++){&lt;br /&gt;				try{&lt;br /&gt;					self[props[i]] = self.__request__[props[i]]&lt;br /&gt;				}catch(e){&lt;br /&gt;				}&lt;br /&gt;			}&lt;br /&gt;			self.onreadystatechange();&lt;br /&gt;			self.readyState == 4 &amp;&amp; self.onload();&lt;br /&gt;		}&lt;br /&gt;		this.onreadystatechange = function(){};&lt;br /&gt;	}&lt;br /&gt;	var methods = "open,abort,send,setRequestHeader,getResponseHeader,getAllResponseHeaders".split(",");&lt;br /&gt;	var make_method = function(name){&lt;br /&gt;		XMLHttpRequest.prototype[name] = function(){&lt;br /&gt;			var params = new Array(arguments.length);&lt;br /&gt;			for(var i=0;i&lt;params.length;i++) params[i] = "_"+i;&lt;br /&gt;			return Function(&lt;br /&gt;				params.join(","),&lt;br /&gt;				["return this.__request__.",name,"(",params.join(","),")"].join("")&lt;br /&gt;			).apply(this,arguments);&lt;br /&gt;		}&lt;br /&gt;	};&lt;br /&gt;	for(var i=0;i&lt;methods.length;i++) make_method(methods[i]);&lt;br /&gt;}&lt;br /&gt;})();&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;you can trace request.open like this.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;(function(){&lt;br /&gt;var open_old = XMLHttpRequest.prototype.open;&lt;br /&gt;XMLHttpRequest.prototype.open = function(){&lt;br /&gt;    alert("open called!");&lt;br /&gt;    return open_old.apply(this,arguments)&lt;br /&gt;}&lt;br /&gt;})()&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Thu, 15 Sep 2005 23:03:40 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/717</guid>
      <author>ma.la (ma.la)</author>
    </item>
    <item>
      <title>XMLHttpRequest do petition</title>
      <link>http://snippets.dzone.com/posts/show/204</link>
      <description>&lt;code&gt;&lt;br /&gt;function loadXMLDoc(url) {&lt;br /&gt;		&lt;br /&gt;    // branch for native XMLHttpRequest object&lt;br /&gt;    if (window.XMLHttpRequest) {&lt;br /&gt;    &lt;br /&gt;        req = new XMLHttpRequest();&lt;br /&gt;        //function_name is the function to process request&lt;br /&gt;        req.onreadystatechange = function_name;&lt;br /&gt;        req.open("GET", url, true);&lt;br /&gt;        req.send(null);&lt;br /&gt;        &lt;br /&gt;    // branch for IE/Windows ActiveX version&lt;br /&gt;    } else if (window.ActiveXObject) {&lt;br /&gt;    &lt;br /&gt;        req = new ActiveXObject("Microsoft.XMLHTTP");&lt;br /&gt;        if (req) {&lt;br /&gt;&lt;br /&gt;            //function_name is the function to process request        &lt;br /&gt;            req.onreadystatechange = actualizarLista;&lt;br /&gt;            req.open("GET", url, true);&lt;br /&gt;            req.send();&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Thu, 21 Apr 2005 21:57:26 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/204</guid>
      <author>dirtyaffairs (Dirty Affairs)</author>
    </item>
    <item>
      <title>XMLHttpRequest process request</title>
      <link>http://snippets.dzone.com/posts/show/203</link>
      <description>&lt;br /&gt;&lt;code&gt;&lt;br /&gt;if (req.readyState == 4) {&lt;br /&gt;&lt;br /&gt;	if (req.status == 200) {&lt;br /&gt;		&lt;br /&gt;            // ...processing statements go here...&lt;br /&gt;&lt;br /&gt;            response = req.responseXML;&lt;br /&gt;            &lt;br /&gt;            results = response.getElementsByTagName(name);&lt;br /&gt;&lt;br /&gt;	}&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Thu, 21 Apr 2005 21:54:53 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/203</guid>
      <author>dirtyaffairs (Dirty Affairs)</author>
    </item>
  </channel>
</rss>
