Ajax学习笔记之服务器响应状态

前端之家收集整理的这篇文章主要介绍了Ajax学习笔记之服务器响应状态前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

文章来源于李刚《疯狂Ajax讲义(第二版)》


1、什么是服务器响应状态码?

最常见的就是404404示资源不存在——即使资源不存在,服务器一样会生成响应。也就是说, 即使程序判断XMLHttpRequest的readyState为4, 服务器响应已经完成, 但从服务器获取的响应信息依然有可能是错误的.

2、XMLHttpRequest对象的处理状态readyState是什么?

XMLHttpRequest 对象的状态信息可通过readyState属性读取,状态信息有如下几种情况:

  • 0 XMLHttpR问uest对象还没有完成初始化。
  • 1 XMLHttpRequest对象开始发送请求。
  • 2 XMLHttpRequest对象的请求发送完成。
  • 3 XMLHttpRequest对象开始读取服务糕的响应.
  • 4 XMLHttpRequest对象读取服务器响应结束。
每当XMLHttpRequest 对象的状态信息改变,即readyState属性改变时,其onreadystatechange属性指定的方法都会被触发。

3、 XMLHttpRequest对象的处理状态与服务器响应状态码的关系:

readyState属性表示XMLHttpRequest对象读取服务器响应的状态,而服务器响应状态码表示服务器生成的响应信息,此信息可通过XMLHttpRequest的status或statusText属性获取

4、通过检测XMLHttpRequest对象的status和statusText属性,即可判断服务器的响应是否正常。当服务器的响应正常时, JavaScript才应该读取服务器响应信息,并将响应信息动态加就到目标页面

服务器:常用的状态码及其对应的含义如下:

  • 200: 服务器响应正常。
  • 304: 该资源在上次请求之后没有任何修改, 这通常用于浏览器的缓存机制。使用GET 请求时尤其需要注意。
  • 400: 无法找到请求的资源。
  • 401: 访问资源的权限不够.
  • 403: 没有权限访问资源。
  • 404: 需要访问的资源不存在。
  • 405: 需要访问的资源被禁止
  • 407: 访问的资源需要代理身份验证.
  • 414: 请求的URL太长。
  • 500: 服务器内部错误
5、总结:如果想通过JavaScript获取服务器响应, 必须先判断服务器响应是否完成。要判断服务器的响应是否究成,只需判断XMLHttpRequest对象的readyState属性即可,当readyState值为4时, 代表响应完成;服务错响应完成后, 还应判断服务器响应是否正确, 判断服务器响应是否正确, 可通过判断XMLHttpRequest对象的status属性进行。当status值为200时, 服务器响应正确, 否则响应不正常。 原文链接:https://www.f2er.com/ajax/161216.html

猜你在找的Ajax相关文章