コンテンツ・ネゴシエーションを使用した JAX-RS アプリケーションでの複数コンテンツ・タイプの処理
RESTful アプリケーションの利点の 1 つは、リソースの異なる表記を戻せる機能です。REST (Representational State Transfer) では、クライアントとサーバーが同一メディア・タイプのリソースを交換したり、異なるメディア・タイプを使用できます。コンテンツ・ネゴシエーションによって、クライアントとサーバーはデータ交換に使用するコンテンツ形式を一致させることができます。
このタスクについて
リソースは多数の異なる形式で表示されます。XML、JavaScript Object Notation (JSON)、Atom、プレーン・テキスト、PNG、JPEG、GIF、およびカスタム、またはプロプラエタリーの形式を使用してリソースを表示できます。REST (Representational State Transfer) は、単一リソースを複数形式で表示する柔軟性を提供します。
アプリケーションの要件によって、リソースは要求に応じで単一形式または異なる形式で表示を戻します。例えば、JavaScript クライアントを使用してアクセスされたリソースにとって JSON 表示が適している場合があります。これは JSON が取り込みやすいためです。 ただし、他のクライアントにとっては XML が好ましいです。
複数形式をクライアントで処理する場合はコンテンツ・ネゴシエーションを使用します。コンテンツ・ネゴシエーションは、クライアントとサーバーが使用する応答コンテンツ・タイプを一致させる手段です。応答に影響を与えるコンテンツ・ネゴシエーションのタイプは 3 つあります。URL に基づいたコンテンツ・ネゴシエーション、要求パラメーターに基づいたコンテンツ・ネゴシエーション、または HTTP ヘッダーに基づいたコンテンツ・ネゴシエーションを使用できます。
手順
タスクの結果
リソースのデータ表示に使用する形式を決定するコンテンツ・ネゴシエーションを実装できました。