現在、オブジェクトのJSON表現を返す単純なRESTfulメソッドがあります。
私の質問は、アーキテクチャの観点からのものであり、完全に技術的なものではありません。
RESTfulサービスは、JSONとXMLの両方を同時に返すように設計する必要がありますか?
私の知る限り、これは悪い習慣であり、これには個別のリソースを定義する必要があります。 1つのリソースはJSONデータと他の1つのXMLを返す必要があります。
私はそれを正しく考えていますか?
同じリソースがリクエストに応じてXMLまたはJSONのいずれかを返す場合がありますが、両方を同時に返すことはできません。リクエストに基づいてどちらを返すかがわかるので、両方を生成する必要はありません。返すものを生成するだけです。
どちらを返すかを決める方法は次のとおりです。順番に評価し、返す形式を決定したら停止します。
GET /user/1234.json
またはGET /user/1234.xml
)、要求された形式としてそれを使用します。いいえ。リソースを表現する方法は、クライアントが期待するものによって定義する必要があります(クライアントが受け入れる表現を示すhttpヘッダーがあります)。つまり、サーバーは、現在のクライアントが受け入れる表現を確認し、この表現で応答を送信する必要があります(または、そのメディアタイプでリソースを表現できないという応答を送信する必要があります)。