2017-11-29(ajax-2)

2017-12-01  本文已影响0人  jslxm

GET 和 POST

GET 请求:

* xml.open("get",,"url地址", true);   例如1:为了避免缓存的效果,我们要在URL后面添加一个唯一的ID     xml.open("GET","demo_get.asp?t=" +Math.random(),true);

* xml.send ();               向服务器发送请求,     如果是get请求类型 send 后面是空

* xml.open("get","url地址",true);   例如2: 用GET发送请求 ,我们需要在 URL 后面添加(后台规定好的数据格式 )信息; xmlhttp.open("GET","demo_get2.asp?fname=Bill&lname=Gates",true);

xml.send () ;    向服务器发送请求,     如果是get请求类型 send 后面是空

POST请求

*xml.open("post","url地址",true) 

* xml.setRequestHeader ("Content-type","application/x-www-form-urlencoded")

  如果需要像HTML表单那样提交数据,就用 setRequestHeader() 来添加HTTP头,然后在send()方法中添加规定好的数据;(只有post请求是会添加HTTP头)

* xml.send("fname=Bill&lname=Gates")  添加规定好的数据格式

True(异步) 和 False(同步)

 XMLHttpRequest 对象要是用于AJAX的话,那么 open()方法中必须设置为true(异步);

通过 AJAX,javascript无需等待服务器的响应,而是:

      * 在等待服务器响应时执行其他脚本;

      * 当响应就绪后对相应进行处理

true:

   xmlhttp.onreadystatechange=function()

{

if (xmlhttp.readyState==4 && xmlhttp.status==200)

{

document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

}

}

xmlhttp.open("GET","test1.txt",true);

xmlhttp.send();

false:

  一般不会使用 false ,因为 javascript 会等到服务器响应就绪才继续执行,如果服务器繁忙或缓慢,那么应用程序会挂起或停止.

 如果 open() 方法用的是 false ,请不要编写 onreadystatechange 函数 ,把代码放到 spen() 方法后面.

 xmlhttp.open("GET","test1.txt",false);

xmlhttp.send();

document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

上一篇下一篇

猜你喜欢

热点阅读