Hi,
I am developing an application that makes a cross origin AJAX request to an HTTP server written using Netty.
An example of the type of Javascript code being executed is below.
$.ajax({
type:"GET",
url:"http://localhost:5000/someresource",
data: { id1: "1", id2: "2" },
success: function(status, textStatus, xhr) {
alert("Success")
},
error: function(status, textStatus, xhr) {
alert("Error")
}
});
The problem I am seeing is that on Firefox (3.6.10 and 4.0 beta) the status of the XMLHttpRequest is always 0, regardless of the status of the response. In firebug I can see that the server is returning the correct status for the request, but this is not being pushed through to the XMLHttpRequest object.
Below is the request and response headers being sent
Response Headers Content-Type text/plain; charset=utf-8 Content-Length 0 Access-Control-Allow-Orig... http://localhost:9000 Cache-Control no-cache Connection Keep-Alive Date Thu, 07 Oct 2010 07:52:08 GMT Request Headers Host localhost:5000 User-Agent Mozilla/5.0.... Accept */* Accept-Language en-gb,en;q=0.5 Accept-Encoding gzip,deflate Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive 115 Connection keep-alive Content-Type application/x-www-form-urlencoded Referer http://localhost:9000/test Origin http://localhost:9000
I have tried executing the code in Chrome, Opera and Safari and they all work fine. Is this something I am doing or a bug in Firefox?
Thanks in advance.