0

答えを求めて Web を閲覧していますが、答えが見つかりません。私は HTML フォーム (method=GET) を持っており、テキスト フィールドに helloΩ (ギリシャ文字の Omega が追加されたこんにちは) というテキストを送信します。

ブラウザの URL は次のようにエンコードされます。

mytext=hello%26%23937%3B

ギリシャ文字のオメガを追加しないと、(予想どおり)次のようになります。

mytext=hello

では、ギリシャ語のオメガ文字のパーセントはどのようにエンコードされますか:

%26%23937%3B

ありがとう

4

1 に答える 1

1

これは、Web サーバーがその文字をサポートしないエンコーディングを宣言した場合に発生します。たとえば、ISO-8859-1多くの Web サーバーのデフォルト エンコーディングである はサポートされていません。

これは、パーセントでエンコードされた html エンティティ文字参照です: Ω, .. はすべて ASCII 文字であるため#&ブラウザーはサーバーが ISO-8859-1 のみをサポートしていると見なすため、これが情報を失わない唯一の方法です。

これを修正するUTF-8には、http ヘッダーで次のように宣言します。

Content-Type: text/html; charset=utf-8

IE はCP1252/ISO-8859-1 にある としてエンコードするためhello%D9、これはブラウザー間で一貫した動作でさえありません。Ú

于 2012-12-17T11:40:48.897 に答える