質問

私は(おそらく)データを返す正しい方法を探しています。 XmlHttpRequest. 。私が見たオプションは次のとおりです。

  • プレーンな HTML. 。リクエストでデータをフォーマットし、使用可能なフォーマットで返します。
    アドバンテージ:呼び出しページで簡単に利用できます。
    不利益:非常に厳格で、固定レイアウトに固執しています。

  • XML. 。リクエストが XML を返すようにし、呼び出しページで XSLT を使用してフォーマットします。
    アドバンテージ:要求されたサービスは他のソースによって簡単に消費されます。
    不利益:ブラウザーの XSLT サポートは十分ですか?

  • JSON. 。リクエストで JSON を返し、JavaScript を使用してそれを消費し、それに応じて HTML をレンダリングします。
    アドバンテージ:リクエストを行う JavaScript を「OO 化」するのが簡単になります。
    不利益:おそらく、前の 2 つのオプションほど使いやすくはありません。

また、呼び出されるサービスのビュー ロジックを抽象化し、異なるレイアウトの切り替えが簡単になるように、オプション 1 を選択することも考えました。個人的には、互換性の理由から、このオプションが 3 つのオプションの中で最良だと思います。

これを入力しているときに、別の洞察を得ました。リクエストに追加されたパラメータに基づいて、3 つの応答フォーマットすべてを許可することは良い考えでしょうか?

役に立ちましたか?

解決

利用可能なほとんどのフレームワークで動作する迅速なソリューションを探している場合は、JSON を使用することをお勧めします。簡単に始められ、機能します。

(サイズの点で、あるいはサードパーティの拡張機能用の独自の API の点で) 拡張する、より大きなアプリケーションを構築しようとしている場合は、XML を選択するでしょう。JSON または HTML で情報を提供するプロキシを作成することもできますが、アプリの構築中に XML をメイン ソースとして使用することには、間違いなく時間と労力を費やす価値があります。

のように @ジョン・トップリー 言った:場合によります。

他のヒント

私も John Topley の意見に同意します。それはアプリケーション次第です。各形式の長所と短所について説明した quirksmode に関する優れた記事があるので、読んでみるとよいでしょう。 http://www.quirksmode.org/blog/archives/2005/12/the_ajax_respon.html

これはアプリの「非公開性」のレベルに依存すると思います。フロントエンドが「リッチ クライアント」 (Gmail など) の場合は、クライアント側のビュー生成の問題を解決する必要があるため、JSON ソリューションを使用します。ユーザーに簡単なメッセージを提供したり、時々いくつかのフィールドを更新したりするために、ajax を控えめに使用している場合は、ビュー ロジックのほとんどがすでにサーバー上にあるため、オプション 1 を使用します。

XmlHttpRequest を使用しようとすると、それが気にならないタイプの頭痛でない限り、非常に頭の痛い問題になると思います。適切に使用するには、ほとんど車輪の再発明に近いことになります。繰り返しになりますが、人々は暇なときに「やったよ」と言うために、車輪を再発明するのが好きです。私じゃない...

XML や JSON 用に多くのデータ読み込み関数が組み込まれているプロトタイプや Extjs のようなフレームワークを入手します。さらに、フレームワークには XmlHttpRequest が成功したか失敗したかを確認するイベント ハンドラーがあるため、より予測可能な結果が得られます。さらに、さまざまなブラウザをすべてサポートします。

さまざまな応答形式を作成するのは難しくありません。JSON 私にとっては一番効果があるので、そのままにしておくのが好きです OOjs, XML をうまく解析する方法がわかりません :)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top