当我注意到在查询字符串中有一个参数utf8
并且其值为✓
时,我在Git上搜索某些内容!不是utf8=yes
或utf8=true
。
Chrome和Firefox中关注的是完整的网址:
https://github.com/Modernizr/Modernizr/search?utf8=✓&安培; Q =浏览器与类型=
但在IE中关注:
https://github.com/Modernizr/Modernizr/search?utf8=%E2%9C%93&q=browser&type=
所以它似乎是一种检测URL编码方案的方法,但有人知道吗?另外,有没有更简单的方法呢?
答案 0 :(得分:5)
默认情况下,旧版本的IE(< = 8)将尽可能以Latin-1编码提交表单数据。通过包含一个无法用Latin-1表示的字符,IE被迫使用UTF-8编码进行表单提交,这简化了各种后端进程,例如数据库持久性。
如果参数是utf8 = true,那么这不会在这些浏览器中触发UTF-8编码。 这是Rails(Github构建的)的黑客/功能,迫使IE提交UTF-8文本。
这是Rails的一个功能(GitHub是用它构建的),虽然它并不特定于Rails。