サーバーに対するURLリクエスト文字とASCII文字の対応表 | 海の見える家

海の見える家

努力して諦めなければ、必ず道があると信じて突き進みます。時を間違えなければ。頑張る時に頑張らなければ、努力は結実しないのです。

時々、リンク先アドレスをコピーして、エディタにテキストベースでペーストした際、「あれ?元のURLアドレスと違う!」と思われたことがあるはずです。

特に「%2F」(%2f)が入っている場合、これは、半角の「/」を意味します。

これは、システム上、特別な意味を持つ文字であるため、変換(エンコード)されているのは、仕方がないのです。エンコードしないそのままの文字でサーバーにリクエストすると、サーバーが誤作動をする可能性が極めて高くなるでしょう。特に条件判断で利用される「!」や「=」や「<」や「>」及び、論理演算子「&」、「|」、「!」、ビット演算子「^」、並びに、代数演算子と呼ばれる加算記号「+」、減算記号「-」、乗算記号「*」、除算記号「/」や剰余計算記号「%」等、サーバを構築しているシステム内で特別な意味を持つので、プログラミング言語でいう「予約語」に相当します。

 予約語とは、既に特別な意味を持っているので、変数などで使用できないというものです。

 よって、サーバーとのやり取りで、パラメータとしてURLを入力する際、URLアドレスに使用することが不可能な文字を使用する場合はURLエンコードした文字へと置換する必要があります。

※ 重要 ※

エンコードされたURLアドレスは、そのままの状態で、ブラウザのアドレス欄にペーストしてEnterを押すと、GoogleChromeの場合は、入力されたものを「文字列」として処理するので、その「文字列」をキーワードとした検索を実行してしまいます。

ASCII文字とURLエンコードの対応表は次の通りです。



文字コード
SPACE(半角スペース)%20
!%21
"%22
#%23
$%24
%%25
&%26
'%27
(%28
)%29
*%2A
+%2B
,%2C
/%2F
:%3A
;%3B
<%3C
=%3D
>%3E
?%3F
@%40
[%5B
]%5D
^%5E
`%60
{%7B
|%7C
}%7D
~%7E


この対応表さえあれば、元のURLアドレスに戻す(デコード)することが出来ます。

これで、意味不明なリンク先URLもほんの少しだけ読めます。