我用ajax给服务器发送请求并携带中文书写的参数时(GET和POST),并没有使用与URL相关的编码解码函数但是参数任然正常的传送到了服务器,并被服务器上的PHP脚本正常识别。想问一下 这里的解码编码操作是浏览器和服务器自动完成的嘛?如果是自动完成,那么什么时候需要人为的调用编码解码函数?
走同样的路,发现不同的人生
额,使用UrlEncode这种编码方式主要是为了防止参数被错误的解析为URL的一部分。。。这种编码和我们常说的字符串编码不是一回事
一些结构时的编码方式不止一种, 比如数组有: ?a=1&a=2 ?a[]=1&a[]=2 等. 此时你可能需要手工写成服务器识别的那种.
?a=1&a=2
?a[]=1&a[]=2
部分浏览器会自动编码和解码,例如chrome,但是,不是所有的浏览器都会这样。所以,大部分情况下请对传递的参数进行UrlEncode,我是.NET的后台,默认会解码一次。
额,使用UrlEncode这种编码方式主要是为了防止参数被错误的解析为URL的一部分。。。
这种编码和我们常说的字符串编码不是一回事
一些结构时的编码方式不止一种, 比如数组有:
?a=1&a=2
?a[]=1&a[]=2
等. 此时你可能需要手工写成服务器识别的那种.部分浏览器会自动编码和解码,例如chrome,但是,不是所有的浏览器都会这样。所以,大部分情况下请对传递的参数进行UrlEncode,我是.NET的后台,默认会解码一次。