66

なぜこのオブジェクトがそのように呼ばれるのかといつも思っています。

リクエストの本文はXML形式である必要はありません。また、サーバーから受信したデータは、JSON、XML、HTML、またはプレーンテキストとしてフェッチできます。XMLは、このオブジェクトでは重要な役割を果たしません。これはある種の決まり文句ですか?このオブジェクトは、最初に作成されたときは何でしたか?

4

3 に答える 3

60

XMLHttpRequestMicrosoftのOutlookWebAccessチームによって発明されました。この非常に革新的なチームは、以前、「AJAX」スタイルの開発の始まりであるリモートスクリプトを提供してくれました。リモートスクリプトはJSONPに似ていましたが、非常に複雑でした(何よりも、Javaアプレットを使用していました)。IE 4または5で要素を動的に挿入できたかどうかは覚えていませんが<script>、それは不可能だったようです。そうでなければ、JSONPはの必要性を排除するのに十分強力であるように思われXMLHttpRequestます。

OutlookチームはXMLをサーバーからクライアントに転送していたため、ActiveXコントロールは、当時の主な用途を反映するように名前が付けられました。これは、MSXMLパーサーの一部として含まれていました。

Firefoxがゲームに参加して独自のバージョンを実装するまでに、FirefoxXMLHttpRequestは現在のように使用され、XMLには使用されていませんでしたが、Firefoxはとにかく同じ名前を使用していました。2つの最大のブラウザメーカーが同じ名前、インターフェイス、機能でオブジェクトを作成しているため、w3cは既存の名前のままでした。誰かが誤称について悪臭を放ち、それをちょうどのようにもっと正確なものと呼ぶことを主張しなかったのは残念ですHttpRequest

「AJAX」が、完全なページの読み込みを必要とせずにWebページがサーバーと対話するプログラミングスタイルを表す一般的な用語になった方法や理由はわかりません。「AJAX」は「XMLHttpRequest」よりも悪い誤称です。これは、XMLが重要な側面であることを意味するだけでなく、サーバーの相互作用を示すものでもないためです。サーバーと通信することなく、JavaScriptを使用してXMLを非同期で処理できます。

于 2012-08-22T06:57:27.460 に答える
33

短い

はい、名前のXML部分はすべて間違っています。

長さ

最良の説明は、XHRを発明したMSエンジニアからのものです。

これは、リリースのわずか数日前に重要な機能が詰め込まれた古き良き時代でした…MSXMLライブラリがIEに同梱されていることに気付き、XMLチームに連絡を取り、おそらく助けてくれるでしょう。連絡を取りました。当時そのチームを運営していたJeanPaoliと、MSXMLライブラリの一部として出荷するという契約をすぐに結びました。これは、XMLHTTPという名前の由来の本当の説明です。ほとんどの場合HTTPに関するものであり、XMLとの特定の結びつきはありません。それ以外は、XMLを出荷するための最も簡単な言い訳だったので、XMLを名前に詰め込む必要がありました。

--AlexHopmannXMLHTTPのストーリー

これは、XMLとの提携を求めることは、それらがどれほど合理的であっても、基本的に著者の意図を過度に解釈していることを明確に示しています。
楽しみを台無しにしてすみません。

于 2016-01-05T08:04:22.313 に答える
8

AJAXはAsynchronousJavascriptandXMLの略です。当初、すべての通信はXMLを使用していました(HTMLもXMLに似ており、XHTMLはXMLです)。JSONは後で登場しました。ですから、それは歴史的な理由によるものです。(このwikiページもご覧ください)

于 2012-08-22T06:13:13.393 に答える