タグ

encodeURIComponentに関するlesamoureusesのブックマーク (2)

  • 情報セキュリティ技術動向調査(2009 年下期):IPA 独立行政法人 情報処理推進機構

    Web において使われる URI(URL)には様々な情報が埋め込まれるが、その埋め込みの際にはエスケープ(パーセントエンコード)が行われる。埋め込まれた情報は取り出されるときにアンエスケープ(パーセントデコード)される。 たとえば、四則演算を行う電卓の Web アプリケーションを考える。この電卓は HTML の form でユーザに式の入力を求め、式が入力されてサーバに送られたらその結果を表示する。ここで、式は "http://calc.example.org?q=式" というような URI にブラウザがアクセスすることによって、サーバに送られるものとする。この形式は HTML の form で用いられる application/x-www-form-urlencoded という形式であり、HTML の規格で定義される。この場合、"1+1" という式を URI に埋め込むには "+" とい

    lesamoureuses
    lesamoureuses 2012/02/11
    >decodeURIComponent は問題なく使える関数である。encodeURIComponent は RFC の変化に追随していないため、用途によっては問題が生じうる。encodeURI と decodeURI は使わない方がよい
  • Unicodeエスケープ - sawatのブログ

    付箋紙Greasemonkeyで、GM_setValueに登録した日語の文字化け対策にencodeURIをつかったけど、encodeURIはURIをエンコードするための関数なのであんまり褒められた使い方ではないですね。しかも、encodeURIのようなURLエンコーディングは文字列をUTF-8にしてから、エンコード対象の各バイトを%xx形式*1で表現するので、日語1文字をあらわすのにたいていの場合ASCII9文字が必要になって効率が悪いです。*2 なので、前述のような単に非ASCII文字をエスケープしたいだけのようなケースではUnicodeエスケープを使った方がよいです。Javaのpropertiesとかnative2asciiとかのやつです。 Unicodeエスケープは\uxxxx*3の形式であらわすので、たいていの日語1文字はASCII6文字になって、URLエンコーディングに比べ

    Unicodeエスケープ - sawatのブログ
  • 1