Las solicitudes AJAX entre dominios (realizadas con jQuery 1.7.2) no se realizan en IE9 a menos que requestTypeType esté establecido en "jsonp" o "script".Solicitudes AJAX entre dominios con IE9
Descubrí este problema al enmarcar una solicitud en la que no me interesaba la respuesta y dejé el tipo de datos no especificado (sí, sé que me debería importar la respuesta).
Así, por ejemplo, esto va a funcionar:
$.ajax({
url: "http://www.google.com",
type: "GET", // or "POST"
dataType: 'jsonp'
});
pero esto no será:
$.ajax({
url: "http://www.google.com",
type: "GET" // or "POST"
});
Por "trabajo" quiero decir que veo una petición HTTP realizada en Firebug o F12 .
Ambas solicitudes funcionan en otros navegadores. La configuración jQuery.support.cors = true;
no afecta el éxito, ni establece crossDomain en true ni cache en false (en la solicitud AJAX).
¿Por qué el éxito de una solicitud AJAX depende del tipo de datos solicitado solo en IE? Puedo entender por qué afectaría mi capacidad para trabajar con los datos devueltos; También entiendo que algunos servidores pueden rechazar todas las solicitudes de cierto tipo de datos (pero aparentemente este no es el caso aquí).
Tienes que entender qué es JSONP. – SLaks
¿Encontró una resolución para esto? Tengo el mismo problema, IE9 + jQuery 1.7.2 haciendo POSTS de dominio cruzado ajax a mi WebAPI. Tengo soporte CORS adecuado construido en el lado del servidor que permite que FF/Chrome/Safari funcione correctamente. IE9 simplemente se niega a emitir la solicitud de OPCIONES previas al vuelo para determinar el soporte de CORS ... – mellodev