欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ajax请求

程序员文章站 2022-07-12 18:59:20
...

ajax: 异步javascript和xml,对智能手机支持比较好

ajax请求:
1.创建一个xhr对象(考虑浏览器兼容性)

var xhr;
if(window.XMLHttpRequest) {
	xhr = new XMLHttpRequest(); // 高级浏览器
} else {
	xhr = new ActiveXObject("Microsoft.XMLHTTP");  // IE6
}

2.指定接收回来的内容,就绪状态改变时触发
xhr对象一旦open(),就有readyState属性,readyState属性的共有5个值

  • 0 open()没有被调用
  • 1 open()被调用了
  • 2 头部已被服务器接收到
  • 3 开始服务器返回的东西,还没有接收完
  • 4 接受完成
xhr.onstatechange = function() {
	if(xhr.readyState == 4) {
		//接收完文件执行的内容
	}
}

3.创建一个请求

  • 第一个参数:请求类型(get/post),
  • 第二个参数:请求路径,
  • 第三个参数:是否使用异步
// get请求
xhr.open("get","php/1.txt?key="+value,true);

// post请求
xhr.open("get","php/1.php",true);
//假如是post请求,必须写一句话,模拟成form表单提交
xhr.setRequestHeader("Content-Type","appliacation/x-www-form-urlencoded");

4.发送请求
send()方法里的参数是http request报文头携带的内容

// 如果是get请求
send(null);

// 如果是post请求
xhr.send("name=value&age=num"); // k=v&k=v

常见的异步:

  1. setInterval()
  2. setTimeout()
  3. 所有的事件监听
  4. ajax

常见http状态码:

  • 200 请求成功
  • 301 资源(网页等)被永久转移到其它URL
  • 304 所请求的资源未修改,显示的是缓存的信息
  • 400 语义有误/参数有误
  • 404 请求的资源(网页等)不存在
  • 500 内部服务器错误