Tôi đang cố đặt tiêu đề Accept HTTP thành "text / xml" với mã jquery này:
$.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());
}
});
Trong firefox nó hoạt động tuyệt vời.
Nhưng trong IE, giá trị mà tôi đang cố gắng để thiết lập cho các Chấp nhận tiêu đề dường như được gắn vào cuối cùng để nó trở thành: Accept: */*, text/xml
. Điều này khiến cuộc gọi ajax của tôi trả về phiên bản html thay vì phiên bản xml mà tôi muốn.
Có ai biết cách đặt / xóa đúng tiêu đề Chấp nhận trong IE 8 không?
Đã cập nhật: Vì lý do nào đó, các dấu hoa thị không xuất hiện khi tôi nhập chúng. Chấp nhận Header trong IE dường như là: Accept: */*, text/xml
.