コンテンツへスキップ
uencoder

Percent-Encoding

パーセントエンコーディングは、URL内の安全でない文字を%HH形式に変換する仕組みであり、RFC 3986で定義される。

目的

URLの構造文字(/ ? # = &)の意味を保ちながら、任意のバイトをURL構成要素の中に安全に出現させる。

メカニズム

安全でない文字の各バイトは、%に続く2桁の大文字16進数になる。予約集合は構成要素ごとに異なり、パスでは/が、クエリでは? = &が許可される。非予約文字(A-Z a-z 0-9 - _ . ~)はエンコードされない。

ユースケース

  • URLクエリパラメータのエンコード
  • RESTfulなパスパラメータ
  • OAuth署名ベース文字列の構築
  • S3のURLパスエンコード

例

  • 入力
    hello world
    Output
    hello%20world

    A space encodes as %20

よくあるエラー

Double encoding (an already-encoded % gets encoded again as %25)
Encode the raw value exactly once

関連用語

関連ツール

関連チュートリアル

References