バックエンド、データ、セキュリティ さらに詳細 A1 · 公式標準 プラットフォーム: ウェブ

Content Negotiation

コンテンツネゴシエーション

コンテンツネゴシエーションとは、HTTPがクライアントの好みとサーバーの利用可能な形式からリソースのバージョンを選択する方法です。

仕組みを見る
そう呼ぶかもしれません Content Negotiation表現交渉交渉を受け入れる

仕組みを見る

元の作業例コンテンツネゴシエーション

もう一つの例

レポートAPIは、`Accept` に応じて `application/json` または `text/csv` を送信します。どちらも機能しない場合は406を返し、`Vary: Accept` を追加します。これにより、キャッシュがJSONクライアントにCSVを送信するのを防ぎます。言語は別途選択され、すべての返信には明確な `Content-Type` が含まれます。

主な部分

  1. 01クライアント設定
  2. 02利用可能な表現
  3. 03選択された応答とVary

以下の場合に使用します

1つのリソースが実際に異なるメディア、言語、エンコーディング、または優先バージョンを持つ場合は、標準のリクエストヘッダーを使用してください。

以下の場合は使用しないでください

キャッシュが区別できないバージョンを作らないこと。サーバーがサポートしていない必須メディアタイプを静かに無視しないこと。

コードで使用する名前

Accept / Accept-Language / Accept-Encoding + Content-Type / Content-Language + Vary

出荷前に

Check contracts and invariants, authorization, and input limits. Test retries, one-time effects, timeouts, and partial failures. Verify data integrity, compatibility, monitoring, recovery, and rollback.

コピーできるリクエスト

Outcome:Complete the task with コンテンツネゴシエーション (Content Negotiation)。 User context:レポートAPIは、`Accept` に応じて `application/json` または `text/csv` を送信します。どちらも機能しない場合は406を返し、`Vary: Accept` を追加します。これにより、キャッシュがJSONクライアントにCSVを送信するのを防ぎます。言語は別途選択され、すべての返信には明確な `Content-Type` が含まれます。 Technical concept or control:コンテンツネゴシエーション (Content Negotiation)。 Why it fits:1つのリソースが実際に異なるメディア、言語、エンコーディング、または優先バージョンを持つ場合は、標準のリクエストヘッダーを使用してください。 Do not use it when:キャッシュが区別できないバージョンを作らないこと。サーバーがサポートしていない必須メディアタイプを静かに無視しないこと。 Engineering requirements: Define inputs, outputs, contracts, and rules that must always hold. Set authorization and input checks. Define failures, timeouts, retries, one-time effects, data moves, and compatibility limits. Operations: Add useful signals and logs that hide sensitive data. Set capacity limits and write an operator guide. Test recovery and rollback. Acceptance criteria: Contract and failure-path tests pass. Data and authorization rules still hold during retries and partial failures. Check performance limits, monitoring, recovery, and rollback. Evidence and limits (evidence boundary):この標準は、列挙された範囲のみを対象とします。視覚スタイル、製品の判断、またはVibularyの例は選びません。 Unknowns to confirm: Where the code runs, data stores, traffic shape, consistency needs, and the security boundary. Also confirm the compatibility period, service goals, and rollback limits.

このリクエストを確認する

Review how コンテンツネゴシエーション (Content Negotiation) is used now. Definition: コンテンツネゴシエーションとは、HTTPがクライアントの好みとサーバーの利用可能な形式からリソースのバージョンを選択する方法です。 Release checks: Check contracts and invariants, authorization, and input limits. Test retries, one-time effects, timeouts, and partial failures. Verify data integrity, compatibility, monitoring, recovery, and rollback. Before changing code, list the evidence, gaps, severity, and the smallest safe fix.

A1
この用語はどれくらい公式か?

公式標準

名前のついた基準が、このページで説明されているルールを決めているよ。

この標準は、列挙された範囲のみを対象とします。視覚スタイル、製品の判断、またはVibularyの例は選びません。

範囲
ソースがカバーするもののみ:正式名、定義、セマンティクス、実装
ドキュメントステータス
標準トラック
チェックオン
2026-07-30

証拠の情報源と範囲

権威のある情報源 + 用語参照 · IETF · 標準トラック HTTP Semantics — 12. Content Negotiation 12. Content Negotiation 範囲: 正式名、定義、セマンティクス、実装 ここでの役割: 直接用語参照 ソースの範囲: 正式名, 定義, セマンティクス, 実装 権威のある情報源 · IETF · 標準トラック HTTP Semantics 範囲: 正式名、定義、セマンティクス、実装 ここでの役割: 指定された範囲内の権威 ソースの範囲: 正式名, 定義, セマンティクス, 実装

自分でコピーする

ブラウザはこれをコピーできませんでした。下のリクエストを選択して自分でコピーしてください。