IE 8 paramètres de sécurité empêche javascript pour envoyer xmlHTTPRequest
Je suis confronté à problème à chaque fois que je désactive les paramètres de sécurité dans IE8, dans mon application, xmlHTTPRequest appel a échoué.Cependant, quand je l'allume, sa fonctionne bien.
La fonction de sécurité est : Outils -> Options Internet -> Avance> sécurité> Activer Native xmlHTTP de soutien.
Si elle est cochée alors pas de problème se produit, mais dans le cas où il n'est pas cochée, le xmlHTTPReq ne parvient pas à envoyer une requête au serveur.(Je ne vois pas l'appel cgi dans la fenêtre du débogueur).
Donc ma question est : est-il possible de détecter que ce paramètres de sécurité est activé ou non à l'aide de JavaScript par programmation ?
Mon code pour l'appel cgi est la suivante :
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);
}
- Aucune personne saine d'esprit désactive ce paramètre
Vous devez vous connecter pour publier un commentaire.
Prendre un coup d'oeil à cette article sur les indiens XMLHTTP sur MSDN. Il fournit également une solution pour votre problème.
Modifier
Je suis désolé, je n'ai pas lu l'article attentivement assez... Cette la réponse à votre question. Vous aurez à essayer si vous pouvez créer une instance de la
XMLHttpRequest
objet.ActiveXObject
objet de la portée mondiale". Votre version abrégée en fera de même.