jeff312 发表于 2013-1-23 02:38:34

收集了一些URI特殊字符的编码,有一些想法

先把资料列一下,
         字符   URL编码值
         space%20
             "    %22
             #    %23
             %    %25
             &    %26
             (    %28
             )    %29
             +    %2B
             ,    %2C
             /    %2F
             :    %3A
             ;    %3B
             <    %3C
             =    %3D
             >    %3E
             ?    %3F
             @    %4o
             \    %5C
             |    %7C

手头的程序,界面基于ajax,需要向服务器上的servlet发送XML,采用HTTP POST 方式,这种情况下POST比GET当然好得多,GET的URL编码更麻烦。即使如此,编码问题还是给我来了一个下马威。由于XML是用纯文本参数的方式发起请求,当XML内部某个节点值含有“+”的时候,Http传输就会丢失这个字符,这个时候必须将“+”手动转成 “%2B”,同时需要手动转的字符还有“&”->“%26”,“%”->“%25”等。这几个特殊字符是不能用javascript的encodeURI()来编码的,所以即使“笨”一点手动转那也是没办法。不过除了这三个顽固的家伙,尚未发现其它字符也需要在POST方式提交XML文本的情况下先作转换,硬编码看来也不是不可以哈。值得留意的是,“&”在XML里也是特殊字符,所以一般来说我不会对其进行uri编码,而是把它转换成“&”。
页: [1]
查看完整版本: 收集了一些URI特殊字符的编码,有一些想法