4.2. Specifying Server Behaviour (サーバー動作の指定)
4.2. Specifying Server Behaviour (サーバー動作の指定)
サーバーの要件は, 実装が準拠するために何を行う必要があるかを定義します。サーバーの動作を指定するとき, 次のことを明確に定義することが不可欠です:
-
サーバーがどのリクエストを受け入れ, どのレスポンスを送信すべきか;
-
サーバーがリクエスト間で保持することが許可される状態 (もしあれば) (セクション 4.10 を参照);
-
サーバーがどのリソースを利用可能にすべきか, およびそれらのセマンティクスは何か; および
-
サーバーがどのプロトコル要素 (メソッド, ステータスコード, ヘッダーフィールド, コンテンツ) を使用すべきか, およびどのように使用すべきか。
アプリケーションが進化できるようにするため, 仕様はサーバーが明示的に指定されていない新しい形式のリクエストを受け入れることを許可すべきです (SHOULD)。これは, 追加のリクエストコンテンツ, 新しいヘッダーフィールド, または新しい URI として現れる可能性があります。
同様に, 仕様はサーバーがレスポンスで予期しないステータスコードまたは追加のヘッダーフィールドを送信することを禁止すべきではありません (SHOULD NOT) が, クライアントがそれらをどのように処理することが期待されるかについてのガイダンスを提供すべきです (SHOULD) (多くの場合, "理解できないものは無視する")。