ajax中get和post两种请求的区别

前端之家收集整理的这篇文章主要介绍了ajax中get和post两种请求的区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Ajax(AsynchronousJavascriptAndXML)即异步JavaScript和XML,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新;这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新(即局部刷新);而传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面

了解完定义后,就要使用ajax技术了,不过在使用之前我们要先了解请求时get和post的区别以及两者各自在何时使用最为合适。


get和post的区别:

1.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址用户看不到这个过程。

2.对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。两种方式的参数都可以用Request来获得。

3.get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,因服务器的不同而异。

4.get安全性非常低,post安全性较高。

5.传递参数时

get方式:在请求时,要连带发送相关参数,将参数附加在URL上即可,例如:

<span style="font-size:18px;"> var urlAndqueryString = "yourApp?name=justin&age=30";
     xmlHttp.open("GET",urlAndqueryString); 
     xmlHttp.send(null);
</span>
post方式:在请求时,要连带发送相关参数,將要发送的参数塞到send()中即可,例如:
<span style="font-size:18px;">var url = "yourApp";
    var queryString = "name=justin&age=30";
    xmlHttp.open(“POST",url);
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xmlHttp.send(queryString);</span>

6.通过URL发送请求时,,GET 方式把表单内容放在前面的请求头中,也就是在地址栏中能够看到传递的参数;而 POST 则把这些内容放在请求的主体中了,同时 POST 中把请求的 Content-Type 头设置为 application/x-www-form-urlencoded,即将传递的参数放在了请求的文件中,地址栏不可见;但两者发送的正文都是一样的。

7.Get请求有如下特性:

它会将数据添加到URL中,通过这种方式传递到服务器,通常利用一个问号?代表URL地址的结尾与数据参数的开端,后面的参数每一个数据参数以“名称=值”的形式出现,参数与参数之间利用一个连接符&来区分。

Post请求有如下特性:

数据是放在HTTP主体中的,其组织方式不只一种,有&连接方式,也有分割符方式,可隐藏参数,传递大批数据,比较方便。


使用场合:

与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。

然而,在以下情况中,请使用 POST 请求:

1.无法使用缓存文件(更新服务器上的文件数据库

2.向服务器发送大量数据(POST 没有数据量限制)

3.发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠

猜你在找的Ajax相关文章