我試圖做一個互聯網上的服務器(http)之間的ajax調用。並將其指向我自己的本地主機。 FF/Chrome/ETC ...的作品。這只是一個IE問題。 IM使用IE 11和10.訪問被拒絕在IE 10和11當ajax目標是本地主機
該請求甚至沒有完成。 「拒絕訪問」立即被拋出。
這是代碼。只爲你看。
IE8 AND IE9中不是經典的HTTP/HTTPS錯誤。這是別的,但文檔沒有幫助。
$jq.ajax({
contentType: 'application/json',
url: url,
dataType: 'json',
crossDomain: true,
beforeSend: function (xhr) {
xhr.withCredentials = true;
xhr.setRequestHeader("Authorization", "Basic " + $jq.base64.encode(username and password));
},
success: function (data, status, headers) {},
error: function (xhr, status, error) {}
狀態是xhr
對象0
和錯誤是「拒絕訪問」
但是如果你的JS正在被其他人運行並且你不能改變他們的IE安全設置呢?這解決了一臺計算機的問題....但不是部署的代碼。 – theUtherSide
@theUtherSide如果您的代碼正在部署到本地主機,那麼您將已經在用戶的工作站上部署/安裝某些東西。如果您有權訪問其工作站,則可以更改其IE安全設置。如果您的用戶正在手動部署/安裝,則可以在安裝說明中包含IE安全設置更改。 – oobug
@oobug這正是我的觀點 - 這個答案只適用於你有權改變IE安全設置的情況。這很好,如果你有一些內部應用程序,但它不適用於野生百葉窗網站上的JS代碼。 – theUtherSide