「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

パーセントエンコーディング

pointこの用語のポイント

pointURLを変換するよ

point使っちゃいけない文字を%(パーセント)と半角英数字の組み合わせで表現するよ

スポンサーリンク

簡単に書くよ

パーセントエンコーディング(英:percent encoding)とは

ホームページの住所(URL)で本当は使っちゃいけない文字を使ったときに、その使っちゃいけない文字を%(パーセント)と半角英数字の組み合わせに置き換えること
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「URL」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

URLは「ホームページの住所」です。
ホームページの置いてある場所とかファイル名とかを示す情報です。

パーセントエンコーディング

例えば

http://wa3.i-3-i.info/extension/index.html

というURLが あったとしましょう。
このURLは

「wa3.i-3-i.info」という名前のコンピュータの中にある「extension」という名前のディレクトリの中にある「index.html」という名前のファイル

を意味します。

パーセントエンコーディング2

以上を踏まえて、本題に入ります。

実はURLには日本語が使えません。
使えるのはアルファベットだけです。

でも、ピヨ太君が「やだやだー、日本語が使いたいー!」と駄々をこねました。

パーセントエンコーディング3

我がまま坊やですね。
仕方ないので「URL」という概念を考えた人は、アルファベットだけで日本語を表現できるようにしました。

例えば、そうですね。
「あ」に対応する文字として「%E3%81%82」が割り当てられています。

パーセントエンコーディング4

同じように「い」には「%E3%81%84」が割り当てられています。

パーセントエンコーディング5

他の文字も同じです。

この状況で、ピヨ太君が

http://example.com/あい/

入力したとしましょう。

日本語部分の「あい」はURLでは使えない文字です。

これを見つけたコンピュータさんは「あい」を「%E3%81%82%E3%81%84」に直して

http://example.com/%E3%81%82%E3%81%84/

に書き換えてくれます。

書き換えた「%E3%81%82」が「あ」を意味します。
同じように「%E3%81%84」が「い」を意味します。

つまり

http://example.com/あい/



http://example.com/%E3%81%82%E3%81%84/

は、同じ内容です。

前者のURLには使えない文字、日本語の「あ」と「い」が含まれています。
後者のURLには使えない文字は含まれていません。
すべてアルファベットです。

このような

URLに使ってダメな文字を、%(パーセント)半角英数字の組み合わせで表現する

のが「パーセントエンコーディング」です。

パーセントエンコーディング6

ちなみに、パーセントエンコーディングとほぼ同じ意味で使われる用語に「URLエンコード」があります。

URLエンコードは「URLで使えない文字を別の表現に置き換えること」です。
例えば、URLに「あ」という日本語を含めたいときに「%E3%81%82」に置き換えるような変換のことを指します。

パーセントエンコーディング7

あれ?
パーセントエンコーディングの説明で例示した内容と同じですね。

はい、同じです。

「パーセントエンコーディング」と「URLエンコード」は同じ

と解釈する人もいます。

パーセントエンコーディング8

ただし、パーセントエンコーディング以外を指して「URLエンコード」と表現する場合も あります。
その点を考慮すると

「パーセントエンコーディング」は「URLエンコード」に含まれる

と解釈できるでしょう。

パーセントエンコーディング9

ちょっとややこしいですかね。
もう一度まとめると

解釈1:URLエンコード = パーセントエンコーディング
解釈2:URLエンコード = パーセントエンコーディング+α


な解釈ができるということです。

そもそもの話として「パーセントエンコーディング」という表現は、あまり一般的ではありませんけどね。
こだわりのない人は「URLエンコード」という表現を使っておくのが無難だと思います。


image piyo2

一言でまとめるよ

まぁ「パーセントエンコーディング」って単語が出てきたら「URL(ホームページの住所に相当する情報)で使えない文字を%(パーセント)と半角英数字の組み合わせで表現するんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像060
書籍画像018

おまけ

■訳してみるよ

「percent(パーセント)」は文字の「%(パーセント)」です。
「encoding(エンコーディング)」は「encode(エンコード)」+「ing」です。
「encode(エンコード)」の意味は「符号化」とか「記号化」とかです。
何となく くっつけると

%で符号化

となります。




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
優れたエンジニアがコミュニティの中でしていること
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践