IE8 AJAX GET setRequestHeaders not working unless params provided in URL
- by bobthabuilda
I'm trying to create an AJAX request in IE8.
var xhr = new ActiveXObject( 'Msxml2.XMLHTTP' );
xhr.open( 'GET', '/ajax/' );
// Required header for Django to detect AJAX request
xhr.setRequestHeader( 'X-Requested-With', 'XMLHttpRequest' );
xhr.onreadystatechange = function() {
if ( this.readyState == 4 ) console.log(this.responseText);
}
xhr.send( null );
This works perfectly fine in Firefox, Chrome, Safari. In IE8 however, all of my AJAX test requests work EXCEPT for ones where I'm performing GETs without any query string params (such as the one above). POSTs work without question, and GET requests only work whenever I include query strings in the URL, like this:
xhr.open( 'GET', '/ajax/?foo=bar' )
I'm also 110% positive that my server code is handling these requests appropriately, so, this stumps me completely.
Does anyone have any clue as to what might be causing this?