XMLHttpRequest() vs ActiveXObject(“Microsoft.XMLHTTP”) - ce qui est le point?
Microsoft a enfin ajouté le natif de l'objet XMLHttpRequest dans Internet Explorer 7, mais j'ai trouvé qu'il peut être désactivée dans la boîte de dialogue Options Internet. Donc, quel est l'avantage il y a à l'aide de XMLHttpRequest() vs ActiveXObject("Microsoft.XMLHTTP")?
Si elle peut être désactivée, cela signifie que nous devons garder la compatibilité du navigateur vérifie toujours, n'est-ce pas? Serait XMLHttpRequest (); initialisation plus rapide que ActiveXObject("Microsoft.XMLHTTP") ou quoi? Pourquoi Microsoft ajouter et de le rendre facultatif?
peut-être pour la compatibilité pour Firefox les pages spécifiques ?
Farias, il est destiné à être. Je ne travaille qu'avec IE7+ (pas d'autres navigateurs), donc je veux vraiment savoir si je dois encore vérifier XMLHttpRequest ou tout simplement aller tout droit pour ActiveXObject()
Si vous travaillez avec IE7+, vous pouvez travailler avec XmlHttpRequest directement, il suffit de prendre l'exception de sécurité dans un try/catch, ce qui signifie qu'il est directement ou indirectement désactivé. Si vous optez pour un ActiveX approche, être conscient que la mise en œuvre interne est tout à fait différent (incompatible avec les chargés DOM, besoin de convertir vers/à partir de) et plus lent et que ActiveX est désactivé assez souvent.
merci, je pense que c'est la réponse que je suis à la recherche d', XMLHttpRequest et Microsoft.XMLHTTP ne sont pas la même chose?
Oui, c'est très différent. I. e., XHR comprend la JS
Farias, il est destiné à être. Je ne travaille qu'avec IE7+ (pas d'autres navigateurs), donc je veux vraiment savoir si je dois encore vérifier XMLHttpRequest ou tout simplement aller tout droit pour ActiveXObject()
Si vous travaillez avec IE7+, vous pouvez travailler avec XmlHttpRequest directement, il suffit de prendre l'exception de sécurité dans un try/catch, ce qui signifie qu'il est directement ou indirectement désactivé. Si vous optez pour un ActiveX approche, être conscient que la mise en œuvre interne est tout à fait différent (incompatible avec les chargés DOM, besoin de convertir vers/à partir de) et plus lent et que ActiveX est désactivé assez souvent.
merci, je pense que c'est la réponse que je suis à la recherche d', XMLHttpRequest et Microsoft.XMLHTTP ne sont pas la même chose?
Oui, c'est très différent. I. e., XHR comprend la JS
this
et il peut être étendu par le biais de prototype
ou normal propriétés personnalisées, ce n'est pas possible avec ActiveX. La performance est bien mieux, et sa sécurité est découplée de l'ActiveX. Les propriétés ont été mises à jour pour refléter le XHR standard (bien sûr, c'est à dire a toujours des problèmes, mais c'est une autre histoire). En bref: c'est une partie cohérente de la DOM et javascript, au lieu d'un objet externe, voir aussi: msdn.microsoft.com/en-us/library/ms537505(SV.85).aspx#_idOriginalL'auteur Andy E | 2009-10-21
Vous devez vous connecter pour publier un commentaire.
La ActiveXObject peut également être désactivé. Notez que d'autres navigateurs peuvent désactiver cette ainsi que d'autres paramètres. Ce n'est pas à propos de la compatibilité du navigateur, mais sur la préférence de l'utilisateur. Les utilisateurs peuvent autoriser /interdire les requêtes inter-domaine, pouvez autoriser /interdire les scripts, peut permettre de Flash ou pas etc.
Vous devez toujours vérifier si votre page fonctionne toujours lisse (ou retombe gracieusement) quand les utilisateurs ont désactivé certaines fonctionnalités du navigateur que vous avez besoin.
La bonne nouvelle: il est activé par défaut, la plupart des utilisateurs ont sur.
Mise à jour: par défaut, les scripts et les demandes de l'extérieur (c'est à dire
document()
,xsl:include
avec XSLT ou entités externes XML) ne sont pas pris en charge parXmlHttpRequest
-les objets récupérés et doit être activée explicitement. Ceci est différent de la non-IE navigateurs, où des demandes externes deXHR
-chargé documents sont autorisées (ou n'existent pas, comme dans Safari et Chrome).The good news is: it is enabled by default, most users will have it on.
- C'est pourquoi j'ai posé la question, j'ai découvert un de mes utilisateurs ne l'ai pas allumé et qu'il était la cause de l'échec de l'application. Je ne savais même pas qu'il pouvait être désactivé jusqu'alors.OriginalL'auteur Abel
C'est une supposition, mais je suppose qu'ils lui permettent d'être désactivé pour la même raison, ils permettent que JavaScript soit désactivé. Certaines personnes croient que les risques (protection de la confidentialité, de la sécurité, peu importe) l'emportent sur les avantages et veux donc désactivé.
OriginalL'auteur Mayo