XMLHttpRequest()vs ActiveXObject(“ Microsoft.XMLHTTP”)-ポイントは何ですか?
-
05-07-2019 - |
質問
MicrosoftはついにInternet Explorer 7でネイティブXMLHttpRequestオブジェクトを追加しましたが、Internet Optionsダイアログで無効にできることがわかりました。 XMLHttpRequest()対ActiveXObject(" Microsoft.XMLHTTP")を使用する利点は何ですか?
無効にできる場合、ブラウザの互換性チェックを永久に保持する必要があるということですね。 XMLHttpRequest()はActiveXObject(" Microsoft.XMLHTTP")よりも早く初期化されますか?なぜマイクロソフトはそれを追加してオプションにするのですか?
解決
ActiveXObjectも無効にすることができます。他のブラウザでもこの設定や他の設定を無効にできることに注意してください。これはブラウザの互換性に関するものではなく、ユーザーの好みに関するものです。ユーザーは、クロスドメインリクエストの許可/禁止、スクリプトの許可/禁止、Flashの許可/禁止などを行うことができます。
ユーザーが必要な特定のブラウザーの機能を無効にしている場合、ページが引き続きスムーズに実行される(または正常にフォールバックする)かどうかを常に確認する必要があります。
良いニュースは、デフォルトで有効になっていることです。ほとんどのユーザーはそれをオンにします。
更新:デフォルトでは、スクリプトおよび外部リクエスト(Xcodeでの document()
、 xsl:include
またはXMLの外部エンティティ) XmlHttpRequest
で取得されたオブジェクトではサポートされていないため、明示的に有効にする必要があります。これは、 XHR
でロードされたドキュメントからの外部リクエストが許可されている(またはSafariやChromeのように存在しない)IE以外のブラウザとは異なります。
他のヒント
これは推測ですが、JavaScriptの無効化を許可するのと同じ理由で、無効化を許可すると想定しています。一部の人々は、リスク(プライバシー、セキュリティなど)が利益よりも重要であるため、無効にすることを望んでいます。