We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now

x

XmlHTTPRequest status returns 0

Medium Priority
3,255 Views
Last Modified: 2013-11-19
I am at a loss for why my code is not working. When I launch the attached html object I get the status code 0 instead of the expected 200. Does anyone know why I am getting this status? I have attached the xml and text files. Change Some.txt to Some.xml
<?xml version="1.0" encoding="UTF-8"?><html xmlns="http://www.w3.irg/1999/xhtml"><head id="header"><title id="title">This is a test</title><script type="text/javascript">window.onload = initAll;
var xhr = false;
var reqerr = "";
 
function initAll()
{
	document.getElementById("textRequest").onclick = getNewFile;
	document.getElementById("xmlRequest").onclick = getNewFile;
}
 
function getNewFile()
{
	makeRequest(this.href);
	return false; //do not display this url which is a file
}
 
function makeRequest(url)
{
	alert("url is " + url);
	if (window.XMLHttpRequest)
	{
		try
		{
			xhr = new XMLHttpRequest();
		}
		catch (e)
		{
			alert("no xml http request");
		}
	}
	else
	{
		if (window.ActiveXObject)
		{
			try
			{
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e)
			{
				try
				{
					xhr = new ActiveXObject("Msxml2.XMLHTTP");
				}
				catch (e)
				{
					alert("No msxml2");
				}
			}
		}
	}
 
	if (xhr)
	{
		xhr.onreadystatechange = showContents;
		xhr.open("GET", url, true);
		xhr.send(null);
	}
	else
	{
		document.getElementById("updateArea").innerHTML = "Sorry, but I couldn't create an XMLHttpReqest";
	}
}
 
function showContents()
{
	if (xhr.readyState == 4)
	{
		if (xhr.status == 200)
		{
			if (xhr.responseXML && xhr.responseXML.contentType=="text/xml")
			{
				var outMsg = xhr.responseXML.getElementsByTagName("choices")[0].textContent;
			}
			else
			{
				var outMsg = xhr.responseText;
			}
		}
		else
		{
			var outMsg = "There was a problem with the request " + xhr.status + ": " + xhr.statusText;
		}
		document.getElementById("updateArea").innerHTML = outMsg;
	}
}
</script></head><body id="public"><h1 id="body.h1">This is the body</h1><p><a id="textRequest" href="sometext.txt">Reqeust a text file</a><br/><a id="xmlRequest" href="Some.xml">Request an xml file</a></p><div id="updateArea">&amp;nbsp;</div></body></html>

Open in new window

Some.txt
sometext.txt
Comment
Watch Question

HonorGodSoftware Engineer
CERTIFIED EXPERT

Commented:
What is the value of readyState when status == 0?
Unlock this solution with a free trial preview.
(No credit card required)
Get Preview
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a free trial preview!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.