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 请求:
2.向服务器发送大量数据(POST 没有数据量限制)
3.发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠