现在的位置: 首页 > 综合 > 正文

get和post方式的提交过程图(补充)(jquery的post 、get for的get post 、链接的get、window.open)

2018年02月04日 ⁄ 综合 ⁄ 共 890字 ⁄ 字号 评论关闭

过程

页面编码--------》浏览器转成一种编码的----------》浏览器url encoding------》发送给服务器

 

 

看看jquery的post

默认情况下都是将数据部分按utf-8发送,不管你页面是gbk、utf-8,全部转成utf-8的url编码

红色框里面在jquery中设置contentType:"application/x-www-form-urlencoded; charset=UTF-8",

火狐中即使设置成gbk请求头还是显示utf-8,好像是能识别,因为jquery都是按utf-8发送的

ie下要设置成utf-8,不设置它不会主动给你加上,而且可以设置gbk,这样是不对应的,会乱码,但是ie容许你这样做

 

红色框里面content-type 的charset 和在过滤器中设置request.setCharacterEncoding("UTF-8")是同样的效果。

可以用request.getCharacterEncoding()方法查看到。这样post的条件下就不会乱码。

 

看看jquery的get

默认是按照utf-8编码,即使它也有content-type,也就是相当于 在过滤器中设置request.setCharacterEncoding("UTF-8"),但是tomcat下对get不管用,所有直接取就会乱码

 

 

看看form的post和get

使用当前浏览器的编码,也就是查看--》编码里面的编码也是下面设置的编码,进行urlencoding的

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

 

<a>链接的get方式

在firefox下测试和form 的get方式一样

 

window.open() 的get方式

在firefox下测试全都转成utf-8编码的urlcoding

 

 

jquery ajax  返回数据接受什么样的编码

默认的情况下是utf-8,如果是其他的编码就要设置 

Content-Type application/json;charset=GBK

 

 

 

 

 

 

 

 

 

 

抱歉!评论已关闭.