AjaxとWEBサービスデータフォーマット:XML SOAP HTML
AJAXが作成されたとき、彼の本来の意味は:Asynchronous JavaScript and XML、非同期javascriptとXML、総じて言えばこのようなものです.は、HTTP GET/POSTパラメータを渡すことができるPHPページなどのネットワークサービスを最初に作成し、XML形式の応答 を返す.クライアントのjsコードをいくつか書きます.たとえば、伝達パラメータや解析XMLなどです.これらの呼び出しは非同期なので、データを待っている間にブラウザが詰まってしまうことはありません. XMLのデータを処理し、DOMノード を更新する
AJAXという名詞は開発者や販売員に悪用された.今日、この全大文字の略語は、ページをリフレッシュしない場合のデータの転送を表す新語となっている.理由は次のとおりです.非同期方法 を必ずしも使用する必要はない. JavaScript を必ずしも使用しない XML も不要
最終的には、どんな技術を使っても、2つのデバイス間でデータを転送します.これはデータフォーマットの第1部であり、後でより多くのデータと特性について説明します.
XML
最初はXMLが最適でした.多くの言語にはXML形式の解析とシーケンス化をサポートする関数があります.あなたが使っている言語がXMLをサポートしていないとしても、彼は実はテキストです.
XMLのメリットは次のとおりです. XMLは読み取り可能で分かりやすい. 多くの言語がXMLをよくサポートしています.肝心なのはJavaScriptです. XMLの方が安全です.データは抽出および解析されなければならないので、悪意のあるデータは を効果的に抑制することができる.
しかし、XMLにも彼の欠点があります.では、業界が統一的に認めているXMLのフォーマットは永遠にありません.RSSなどを適切に配合する必要があります.クライアントのJavaScriptは理解しなければなりません. XML形式のデータは、データの量よりもラベルが大きい可能性があります.非同期インタラクションの場合、データが小さいほど良いです. XMLには、1つのデータが新しい要素なのか、メタデータの属性なのか、曖昧な点があります.属性としてはファイルが小さいかもしれませんが、これに合うのは不便です. JavaScritpでXMLを解析するのは大変ですが、XPathのサポートが良いので、先に変換する必要があります
多くの開発者はXMLが死んだと思っていますが、私はあまり同意していません.今XMLはAjaxの最適な選択ではないかもしれませんが、すべてのウェブサービスがどのように配置されているかは分かりません.そしてXMLの普及は偉大なことであり、無視しないでください.
SOAP
SOAPはデータ交換の標準フォーマットです.詳細な技術詳細ドキュメントは数百ページあり、総じてSOAPは定義されたXML schemasに依存しています.開発者の世界でSOAPを使う人は少ない(見れば十分).SOAPの魅力は,クライアントのライブラリがXMLを自動的にオリジナルのオブジェクトに変換できることである.例えば.NETの開発者はSOAPベースのネットワークサービスを作成することができ、クライアントはあまり多くのことをする必要はありません.開発者としては、リモートのマシンで何を使っているのか気にしないC#を使うことが多い.しかしSOAPの欠点: SOAPはXMLの冗長さ を超えた. JavaScriptでのSOAPの処理は依然として困難である.SOAPのライブラリは処理に協力できるが,開発者やブラウザにとっては大きな圧力がある である.
SOAPは、特に同じローカルエリアネットワークの場合、サービス側間の通信の選択である.しかしAjaxではあまり使われていません.
HTML
Ajaxリクエストでページにコードを挿入したい場合は、HTMLは簡単なフォーマットで、あまり処理する必要はありません.たとえば、各ページにカートを表示する必要があるとします.サーバー側にこのようなHTMLコードがあれば、意見商品を選んだ後、同じHTMLコードを返すことができます.メリットは次のとおりです.既存のコードを簡単に使用でき、ネットワークサービス を作成できます.クライアントで複雑なデータ処理を行う必要はない . HTMLコードはinnerHTMLを介してページに素早く挿入できる .
しかし、欠点もあります.は、本当に価値のあるデータを分離するのは難しい.例えば、他の場所で異なる方法でカートを表示したい場合は、 は使えません.伝送のデータ量も比較的大きく、XMLよりも 大きい HTMLを挿入すると既存ページを破壊するリスクがある .セキュリティが問題になる可能性があり、対応するデータに悪意のあるコードがある可能性があります
AJAXという名詞は開発者や販売員に悪用された.今日、この全大文字の略語は、ページをリフレッシュしない場合のデータの転送を表す新語となっている.理由は次のとおりです.
最終的には、どんな技術を使っても、2つのデバイス間でデータを転送します.これはデータフォーマットの第1部であり、後でより多くのデータと特性について説明します.
XML
最初はXMLが最適でした.多くの言語にはXML形式の解析とシーケンス化をサポートする関数があります.あなたが使っている言語がXMLをサポートしていないとしても、彼は実はテキストです.
xml version="1.0"
?>
<
products
>
<
book
>
<
title
>
The Principles of Beautiful Web Design, 2nd Edition
title
>
<
url
>
http://www.sitepoint.com/books/design2/
url
>
<
author
>
Jason Beaird
author
>
<
publisher
>
SitePoint
publisher
>
<
price
currency
="USD"
>
39.95
price
>
book
>
<
book
>
<
title
>
jQuery: Novice to Ninja
title
>
<
url
>
http://www.sitepoint.com/books/jquery1/
url
>
<
author
>
Earle Castledine
&
Craig Sharkie
author
>
<
publisher
>
SitePoint
publisher
>
<
price
currency
="USD"
>
29.95
price
>
book
>
<
book
>
<
title
>
Build Your Own Database Driven Website
title
>
<
url
>
http://www.sitepoint.com/books/phpmysql4/
url
>
<
author
>
Kevin Yank
author
>
<
publisher
>
SitePoint
publisher
>
<
price
currency
="USD"
>
39.95
price
>
book
>
products
>
XMLのメリットは次のとおりです.
しかし、XMLにも彼の欠点があります.
//
grab value in first element
var
xml
=
xhr.responseXML;
var
nodes
=
xml.getElementsByTagName(
"
data
"
);
var
data
=
(nodes.length
>
0
?
nodes[
0
].firstChild.nodeValue :
null
);
多くの開発者はXMLが死んだと思っていますが、私はあまり同意していません.今XMLはAjaxの最適な選択ではないかもしれませんが、すべてのウェブサービスがどのように配置されているかは分かりません.そしてXMLの普及は偉大なことであり、無視しないでください.
SOAP
SOAPはデータ交換の標準フォーマットです.詳細な技術詳細ドキュメントは数百ページあり、総じてSOAPは定義されたXML schemasに依存しています.開発者の世界でSOAPを使う人は少ない(見れば十分).SOAPの魅力は,クライアントのライブラリがXMLを自動的にオリジナルのオブジェクトに変換できることである.例えば.NETの開発者はSOAPベースのネットワークサービスを作成することができ、クライアントはあまり多くのことをする必要はありません.開発者としては、リモートのマシンで何を使っているのか気にしないC#を使うことが多い.しかしSOAPの欠点:
SOAPは、特に同じローカルエリアネットワークの場合、サービス側間の通信の選択である.しかしAjaxではあまり使われていません.
HTML
Ajaxリクエストでページにコードを挿入したい場合は、HTMLは簡単なフォーマットで、あまり処理する必要はありません.たとえば、各ページにカートを表示する必要があるとします.サーバー側にこのようなHTMLコードがあれば、意見商品を選んだ後、同じHTMLコードを返すことができます.メリットは次のとおりです.
しかし、欠点もあります.