Làm thế nào để tạo lại lỗiSafari XHR (AJAX) yêu cầu w/cross-domain redirect không
- Thực hiện yêu cầu AJAX đến một máy chủ sử dụng Safari
- Có phản ứng máy chủ w/302 đến một tên miền khác
Nếu một trong những điều kiện là không đáp ứng, nó hoạt động.
- Sử dụng trình duyệt khác, nó hoạt động.
- Để máy chủ chuyển hướng đến cùng một miền, nó hoạt động.
.
Load: function (in_url, in_cb, in_responseType) {
var xhr = new XMLHttpRequest();
xhr.open('GET', in_url, true);
xhr.onload = function() {
if (xhr.status === 200) {
in_cb(null, xhr.response);
} else {
in_cb(new Error('[Loader] Could not fetch from: '+in_url+', status: '+xhr.status));
}
};
xhr.onerror = function (error) {
in_cb(error);
};
xhr.send();
}
Đây là sự cố đã biết với Safari. Có vẻ như nó thực sự đang được làm việc trên gần đây như https://bugs.webkit.org/show_bug.cgi?id=112471. – itayad
Tuy nhiên, hãy đảm bảo máy chủ của bạn hỗ trợ CORS –