Tôi đang cố gắng để thiết lập các tiêu đề HTTP Chấp nhận để "text/xml" với mã jquery này:có thể không đúng cách đặt tiêu đề Chấp nhận HTTP với 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());
}
});
Trong firefox nó hoạt động tuyệt vời.
Nhưng trong IE, giá trị mà tôi đang cố gắng đặt cho tiêu đề Chấp nhận dường như được nối vào cuối để nó trở thành: Accept: */*, text/xml
. Điều này làm cho cuộc gọi ajax của tôi trả lại 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 tiêu đề Chấp nhận đúng cách trong IE 8 không?
Đã cập nhật: Vì một số lý do các dấu hoa thị không xuất hiện khi tôi nhập chúng. Tiêu đề chấp nhận trong IE có vẻ là: Accept: */*, text/xml
.
Nó không chỉ thêm /. Nó thực sự bổ sung: \ */\ * Vấn đề định dạng trong câu hỏi –
Vâng, tôi đã tìm ra vấn đề định dạng ... Tôi phải đối mặt với cùng một điều – BStruthers