-> 09 { 01 / 21 }
URL の GET での長さの制約
IE だと 2083 文字で、他のブラウザは割とすごい長い文字列も大丈夫、という訳で GET にパラメータつけまくってJSONPだぜ(いまさら)と意気込むために、きちんとブラウザごとに測定しよーかな、と思ったんだけど、apache だとデフォルトで 10000 文字行かずに
414 Request-URI Too Large
になる罠が…。ブラウザのURL長さの制約考えなくていいのは location.hash の長さだけだなー、と今更。
で、location.hash で計ったところ
- Firefox 3.0.5
- 1000000 文字以上OK。なんか重い。
- Chrome/1.0.154.43
- 1000000 文字以上OK。軽い。
- Opera 9.62
- 1000000 文字以上OK。軽い。
- Win Safari 3.2.1
- 1000000 文字以上OK。重い。
という結果に。で、IE7 なんだけど [IE] URL ??g?p??¥?????????ő? 2,083 ???? とのことだけど、location.hash を弄った場合は 4095 文字までいけるみたいなんだけど?あれれ?(location.href.length で 4095 は出るのは確認済み)
トラックバック - http://subtech.g.hatena.ne.jp/secondlife/20090121
と思ってMSDN Libraryを見たらもっと多くの場所で発生するみたいです。
http://msdn.microsoft.com/en-us/library/ms536959.aspx
しかし srcElement に document.body が入っておらず、判別するには…、うーん。