深入解析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的一些主要区别和功能。

有互粉的朋友可以互相关注哦,有粉必应!!!!

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。