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

k-hatano 419views 更新:2014年3月13日

GET送信によって(URIの最後に?param=valueのような形でパラメータを記述する形)パラメータの受け渡しをする場合、& や ? などの記号や日本語などURIに使用できない文字はパーセントエンコーディングを行う必要があります。

JavaScriptではencodeURIやencodeURIComponentといった関数を使うと便利です。それぞれ以下の違いがあります

  • encodeURIは日本語の文字などのみをエンコードします。& や ? などの記号はエンコードしません。
  • encodeURIComponentはエンコードが必要な文字をすべてエンコードします。

JavaではURLEncoderクラスのencodeメソッドでエンコードすることができます。

この他に、Aipoで使われているVelocityでは addQueryData メソッドを用いればパラメータ渡しの際のパーセントエンコーディングは自動的に行われます。

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません