首页 > 代码库 > 深入解析Ajax($.post和$.get的主要区别)——系列(二)
深入解析Ajax($.post和$.get的主要区别)——系列(二)
上一个系列讲解了关于ajax的load方法,现在来讲它第2层包含的其他两个方法$.post、$.get
首先要明确的事$.get方法是使用GET方式进行异步请求。$.post方法使用POST方式来进行异步请求。
$.get
其结构为:
$.get(url [, data] [, callback] [, type])
url:请求的HTML页的URL地址
data(可选):发送至服务器的key/value数据会未为QueryString附加到请求URL中
callback(可选):载入成功时回调函数(即当Response的返回状态为success才调用)自动将请求结果和状态传递给该方法
type(可选):服务器端返回内容的格式,包括xml,html,script,json,text和_default.
例子如下:
$(function(){ $("#send").click( $.get("get3.php",{ username: $("#username").val() content:$("#content").val() },function(data,textStatus){ var username=data.user .................. },"json") ); });
$.post
结构和使用方式上跟get的都基本相同。但是也有一些主要区别
1)GET请求会将参数跟在URL后进行传递,而POST请求则是作为HTTP消息的实体内容发送给WEB服务器。当然在Ajax请求中,这种区别对用户是不可见的。
2)GET方式对传输的数据大小有限制,通常不能大于2KB,而POST方式传递的数据量要比GET方式大得多,理论上不受限制。
3)GET方式请求的数据会被浏览器缓存起来,因此其他人就可以从浏览器的历史记录中读取到这些数据,例如账号和密码等。在某种情况下,GET方式会带来严重的安全问题。而POST方式相对来说就可以避免这些问题。
4)GET方式和POST方式传递的数据在服务器端的获取也不相同。在PHP中,GET方式的数据可以用$_GET[]获取,而POST方式可以用$_POST[]获取。两种方式都可以用$_REQUEST[]来获取。
以上即是$.get $post的一些主要区别和功能。
有互粉的朋友可以互相关注哦,有粉必应!!!!
深入解析Ajax($.post和$.get的主要区别)——系列(二)