在IE地址栏里写上:test.jsp?name=大萝卜
请问这个"大萝卜"是经过什么字符集编码后发送到服务器的?
看IE里有一个“发送UTF-8 URL”选项,不过我测试了一下,好像不是以UTF-8发的啊?
如果IE是以系统默认字符集进行的编码,那请麻烦说明一下那个“发送 UTF-8 URL”是什么意思??
谢谢了!

解决方案 »

  1.   

    我看了一下,ie里地址栏输入:http://topic.csdn.net/u/20080327/21/a1a86bb9-e533-4b07-80fe-9bc24de368ca.html?name=大萝卜 ,
    发送出去的是:http://topic.csdn.net/u/20080327/21/a1a86bb9-e533-4b07-80fe-9bc24de368ca.html?name=%E5%A4%A7%E8%90%9D%E5%8D%9C
    这里的%E5%A4%A7%E8%90%9D%E5%8D%9C是“大萝卜”utf-8编码的,gb2312编码的值是:%B4%F3%C2%DC%B2%B7。
    由此可见ie确实是以utf-8发送的,如果你服务端处理时不是utf-8,那可能是服务端进行了转码。
      

  2.   

    我看了一下,ie里地址栏输入:http://topic.csdn.net/u/20080327/21/a1a86bb9-e533-4b07-80fe-9bc24de368ca.html?name=大萝卜 ,
    发送出去的是:http://topic.csdn.net/u/20080327/21/a1a86bb9-e533-4b07-80fe-9bc24de368ca.html?name=%E5%A4%A7%E8%90%9D%E5%8D%9C
    这里的%E5%A4%A7%E8%90%9D%E5%8D%9C是“大萝卜”utf-8编码的,gb2312编码的值是:%B4%F3%C2%DC%B2%B7。
    由此可见ie确实是以utf-8发送的,如果你服务端处理时不是utf-8,那可能是服务端进行了转码。
      

  3.   

    不是吧?你在IE里打上
    http://topic.csdn.net/u/20080327/21/a1a86bb9-e533-4b07-80fe-9bc24de368ca.html?name=大萝卜
    “大萝卜” 会变成编码形式的?我这里根本没有改哪!!!
      

  4.   

    这个是没有办法的,你改用post的提交吧,在url中提交中文是乱码
      

  5.   

    无论什么情况,你的那种链接都不要出现,可以采用如下方法解决
    1 采用POST, 这样参数就不再url里面了,所以不会有这个问题2 如果采用GET,你应该自己编码
    String url = "test.jsp?name=大萝卜";
    url = URLEncoder(url,"GBK"); // 这样自己主动编码,根据网站编码情况,可以用UTF-8编码
      

  6.   

    我想问的不是应该不应该出现,是想知道。IE在发送我这种样子的URL的时候,到底对参数是怎么编码的呢?
      

  7.   

    你看看这两个类.URLENCODE URLDECODE
      

  8.   

    URL中的内容是UTF-8编码的,表单里面内容是采用页面编码进行的
      

  9.   

    URL中的内容经过UTF-8编码
    比如我传?test=我
    那为什么new String(request.getParameter("test").getBytes("iso-8859-1"),"GBK");
    第二个参数用GBK却仍然能得到正确 "我" ?
    不是说经过UTF-8编码么?
      

  10.   

    我想问的不是应该不应该出现,是想知道。IE在发送我这种样子的URL的时候,到底对参数是怎么编码的呢?
    -----------------------------------------------------------------------------------
    默认是按照ISO-8859-1来编码的
      

  11.   

    在IE的设置中,高级选项卡下,有一个“发送utf-8 URL”把这个勾上应该就是默认以UTF-8进行编码的
    但是如果不勾的话不清楚,请高人指点
      

  12.   

    网页设计的时候是可以自己制定 编码方式的。如果 不制定IE默认实用utf-8进行编码
      

  13.   

    叶面有meta charset属性
    提交页面时,如果是post请求那么根据charset编码。没有的话应该用iso-8859-1.
    如果是get请求那么根据charset编码。没有的话应该用utf-8或者iso-8859-1. new String(request.getParameter("test").getBytes("iso-8859-1"),"GBK"); 
    这一句是转码。java有对应表可以对不同编码进行转码。看这句话意义不大。
    建议楼主看一下websphere 或者 weblogic的编码设定。都有比较详细地说明。
    对转码器的选择也是应对特殊字符不得不看得。一般来说web服务器默认请求编码为iso-8850-1.
      

  14.   

    这个编码不一定的,根据iis或page的设置,可以使GBK或UTF 甚至是ISO-8859-1
      

  15.   

    String url = "test.jsp?name=大萝卜";
    url = URLEncoder(url,"GBK"); // 这样自己主动编码,根据网站编码情况,可以用UTF-8编码
      

  16.   

    根据不同的页面,可能是GBK/UTF-8google 是 UTF-8
    baidu  是 GBK