No se puede configurar correctamente el encabezado HTTP de aceptación con jQuery
Estoy tratando de establecer el encabezado HTTP Aceptar en "texto / xml" con este código jquery:
$.ajax({
beforeSend: function(req) {
req.setRequestHeader("Accept", "text/xml");
},
type: "GET",
url: "[proper url]",
contentType: "text/plain; charset=utf-8",
dataType: ($.browser.msie) ? "text" : "xml",
username: '---',
password: '-------',
success: function(data) {
var xml;
if (typeof data == "string") {
alert("Data is string:" + data);
xml = new ActiveXObject("Microsoft.XMLDOM");
xml.async = false;
xml.loadXML(data);
} else {
xml = data;
alert("Data is not string:" + $(xml).text());
}
// Returned data available in object "xml"
//alert("Status is: " + xml.statusText);
$("#ingest_history").html($(xml).text());
}
});
En Firefox funciona muy bien.
Pero en IE, el valor que estoy tratando de establecer para el encabezado Aceptar parece que se agrega al final, por lo que se convierte en:Accept: */*, text/xml
. Esto hace que mi llamada ajax devuelva la versión html en lugar de la versión xml que quiero.
¿Alguien sabe cómo configurar / borrar correctamente el encabezado Aceptar en IE 8?
Actualizado: por alguna razón, los asteriscos no aparecían cuando los ingresé. El encabezado de aceptación en IE parece ser:Accept: */*, text/xml
.