【浏览器】Ajax 是什么? Ajax的基本流程?( 二 )


3. 什么是?
是对象的一个属性 , 用来标识当前对象处于什么状态 。总共有5个状态值 , 每个值代表了不同的含义
状态值含义
0:未初始化
未调用.open()方法
1:启动
调用了.open()方法但未调用.send()方法
2:发送
已经调用.send()方法 , 但尚未接收到响应
3:接收
已经接收到了部分响应数据
4:完成
已经接收到全部响应数据 , 而且已经可以在客户端使用了
4. 什么是?
HTTP状态码()由三个十进制数字组成 , 第一个十进制数字定义了状态码的类型 , 后两个数字没有分类的作用 。HTTP状态码共分为5种类型:
分类分类描述
1**
信息 , 服务器收到请求 , 需要请求者继续执行操作
2**
成功 , 操作被成功接收并处理
3**
重定向 , 需要进一步的操作完成请求
4**
客户端错误 , 请求包含语法错误或无法完成请求
5**
服务器错误 , 服务器在处理请求的过程中发生了错误
5. 常见的状态码
仅记录在上的 HTTP 状态码就达 40 种 , 若再加上 (、5842)和附加 HTTP 状态码 ()等扩展 , 数量就达 60 余种 。接下来 , 我们就介绍一下这些具有代表性的一些状态码 。

【浏览器】Ajax 是什么? Ajax的基本流程?

文章插图
状态码作用
200
表示从客户端发来的请求在服务器端被正常处理了 。
204
表示请求处理成功 , 但没有资源返回 。
301
表示永久性重定向 。该状态码表示请求的资源已被分配了新的URI , 以后应使用资源现在所指的URI 。
302
表示临时性重定向 。
304
表示客户端发送附带条件的请求时(指采用GET方法的请求报文中包含if-,if--since,if-none-match,if-range,if--since任一个首部)服务器端允许请求访问资源 , 但因发生请求未满足条件的情况后 , 直接返回(服务器端资源未改变 , 可直接使用客户端未过期的缓存)
400
表示请求报文中存在语法错误 。当错误发生时 , 需修改请求的内容后再次发送请求 。
401
表示未授权() , 当前请求需要用户验证
403
表示对请求资源的访问被服务器拒绝了
404
表示服务器上无法找到请求的资源 。除此之外 , 也可以在服务器端拒绝请求且不想说明理由时使用 。
500
表示服务器端在执行请求时发生了错误 。也有可能是Web应用存在的bug或某些临时的故障 。
503
表示服务器暂时处于超负载或正在进行停机维护 , 现在无法处理请求 。
6. GET和POST请求数据区别
关于第一点区别 , 详情看下图:
4、Ajax交互示例 GET请求
var oRequest = null;function getTitleInfo(titleid){oRequest = getHttpRequest(); // 获得XMLHttpRequest对象oRequest.open(“get” , “AJAXServlet” , true); // 建立对服务器的异步调用oRequest.onreadystatechange = myfun; //onreadystatechange来监视readyState属性值的变化oRequest.send(null); // 向服务器发送异步调用请求}function myfun(){// (回调处理)if (oRequest.readyState == 4&&oRequest.status==200){var result = oRequest.responseText;var msgdiv = document.getElementById("message");msgdiv.innerHTML = result;}}
POST请求
【【浏览器】Ajax 是什么? Ajax的基本流程?】