HTTPQUERY
日本語

Accept-Charset

使い方

Accept-Charset ヘッダーはコンテンツネゴシエーションの一部であり、クライアントが utf-8、iso-8859-1、windows-1252 といった優先する文字エンコーディングを列挙できるようにするものでした。サーバーは最も適合するものを選び、それに従ってレスポンスボディをエンコードしていました。

非推奨

このヘッダーは非推奨です。現代の HTTP クライアントとサーバーは既定で UTF-8 を使用するため、文字セットネゴシエーションは不要になりました。このヘッダーを送信してもエンコーディングの好みが露出するだけで実用的な利点はなく、フィンガープリンティングの対象面を広げてしまいます。ブラウザはこのヘッダーを送信しなくなっており、サーバーは受信しても値を無視することが推奨されます。

UTF-8 は Unicode の全範囲を扱え、Web 全体で支配的なエンコーディングとなりました。Content-Type レスポンスヘッダーが charset パラメーターで選択したエンコーディングを伝えるため、独立したネゴシエーションの手順は不要です。

charset-name

utf-8 や iso-8859-1 のように、IANA に登録された文字エンコーディング名です。

*

ヘッダーにまだ列挙されていない任意のエンコーディングに一致するワイルドカードです。

;q=(品質値)

相対的な優先度を表す 0 から 1 の間の重みで、Accept と同じ構文に従います。既定の重みは 1.0 です。

例

UTF-8 を優先し、ISO 8859-1 をフォールバックとして示すクライアントです。品質値 0.7 はフォールバックの優先度が低いことを示します。

Accept-Charset: utf-8, iso-8859-1;q=0.7

UTF-8 を最高優先度で、その他のエンコーディングを低い優先度で受け入れる、より広いリクエストです。

Accept-Charset: utf-8, *;q=0.5