Ajax获取数据的几种方法

简介

  Ajax就是Asynchronous JavaScript And XML,首先要强调的一点,就是Ajax并非编程语言,而是使用XMLHttpRequest对象来请求数据,而数据也并不一定是XML,纯文本,JSON作为数据也很常见,Ajax最大的作用在于异步请求数据,这使得网页可以局部刷新外部取得的数据,实现动态页面的效果。

方法

  

new XMLHttpRequest() 创建新的 XMLHttpRequest 对象
abort() 取消当前请求
getAllResponseHeaders() 返回头部信息
getResponseHeader() 返回特定的头部信息
open(methodurlasyncuserpsw)

规定请求

  • method:请求类型 GET 或 POST
  • url:文件位置
  • async:true(异步)或 false(同步)
  • user:可选的用户名称
  • psw:可选的密码
send() 将请求发送到服务器,用于 GET 请求
send(string) 将请求发送到服务器,用于 POST 请求
setRequestHeader() 向要发送的报头添加标签/值对

 

属性

onreadystatechange 定义当 readyState 属性发生变化时被调用的函数
readyState

保存 XMLHttpRequest 的状态。

  • 0:请求未初始化
  • 1:服务器连接已建立
  • 2:请求已收到
  • 3:正在处理请求
  • 4:请求已完成且响应已就绪
responseText 以字符串返回响应数据
responseXML 以 XML 数据返回响应数据
status

返回请求的状态号

  • 200: "OK"
  • 403: "Forbidden"
  • 404: "Not Found"
statusText 返回状态文本(比如 "OK" 或 "Not Found")

实例

function loadDoc() {
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            document.getElementById("demo").innerHTML =
            this.responseText;
       }
    };
    xhttp.open("GET", "ajax_info.txt", true);
    xhttp.send(); 
} 
View Code

  当需要发送给服务器大量数据或者希望数据安全些,可以考虑使用POST,GET可以用表单的形式发送简单的数据给服务器:

xhttp.open("GET", "demo_get2.asp?fname=Bill&lname=Gates", true);

  因为Ajax的特点就在于异步,所以这个异步参数基本都为true,同时不推荐使用同步。

 

posted @ 2022-10-17 16:55  lrplrplrp  阅读(1433)  评论(0编辑  收藏  举报