我面臨的問題是,每當我關閉IE8中的安全設置時,在我的應用程序中,xmlHTTPRequest調用失敗。但是當我打開它時,它的工作正常。 安全功能是:工具 - > Internet選項 - >高級 - >安全性 - >啓用本機xmlHTTP支持。 如果選中,則不會發生問題,但如果未檢查,則xmlHTTPReq無法向服務器發送請求(在調試器窗口中未看到cgi調用)。IE 8安全設置阻止JavaScript發送xmlHTTPRequest
所以我的問題是:是否有可能檢測到這個安全設置是否啓用或不使用JavaScript編程?
我對CGI調用代碼是根據:
try{
var xmlHttpReq;
var destinationURL = cgiBinPath+"helloworld.cgi?start";
// IE 7+, Mozilla/Safari
if (window.XMLHttpRequest) {
xmlHttpReq=new XMLHttpRequest();
}
//IE 5,6
else {
xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlHttpReq.readyState == 0){
xmlHttpReq.open('GET', destinationURL, true);
xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttpReq.onreadystatechange = function(){
if(xmlHttpReq.readyState == 4){
//Control never reaches here
}
}
xmlHttpReq.send();
}
}catch(e){
alert('Exception '+e);
}
任何有理智的人禁用此設置 – ThiefMaster