SQLの窓

2013年10月08日


RFC 3986 に基づいた URL エンコード の簡単な理解

PHP のマニュアルの、rawurlencode の関数説明で簡潔明快に解説されています。
-_.~ を除くすべての非アルファベット文字をパーセント 記号 (%)に続いて 2 つの 16 進数がある表現形式に 置き換えた文字列を返します。これは、文字定数が特殊な URL デリミタと して解釈されたり、URL デリミタが(いくつかの電子メールシステムのような) 転送メディアにより文字変換されて失われてしまったりすることが ないように、RFC 3986 で定められたエンコーディング方法です。
要するに、-_.~ の4文字以外は全て%エンコーディングされるという事で、通常の URLENCODE でパーセントエンコードされない可能性のある 『+!'()*/』も%エンコーディングされます。ですから、他の言語の同様のメソッドや関数を RFC 3986 対応するには、『+!'()*/』をそれぞれ文字列変換しなおせば良いです。それと、 『~』が『%7E』になっている可能性があるので、元に戻す必要があります ▼ Java による例
String target = "文字列";
target = URLEncoder.encode(target, "UTF-8");
target = target.replace("+", "%20");
target = target.replace("*", "%2A");
target = target.replace("%7E","~");

関連する記事

いろいろな言語におけるバーセントエンコーディング





posted by lightbox at 2013-10-08 08:47 | プログラミング・仕様等 | このブログの読者になる | 更新情報をチェックする
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり