AJAX

作者: WWWKY | 来源:发表于2018-03-13 16:53 被阅读0次

1. 如何发送请求

  • 通过form表单发送请求(包括get请求和post请求),会刷新页面或新开页面
  • 通过a链接发送get请求,会刷新页面或新开页面
  • 通过img标签发送get请求,必须将img标签插入页面才能发送请求,且只能以图片形式展示
  • 通过link标签发送get请求,必须插入head才能发送请求,且只能以CSS或favicon的形式展示
  • 通过script标签发送get请求,必须插入页面,但只能以脚本形式运行

使用AJAX

AJAX全称Asynchronous Javascript And XML,即异步的JavaScript和XML,AJAX允许以任意形式发送请求并且以任意形式展示。
符合如下技术的就叫做AJAX:

  1. 使用XMLHttpRequest发送请求
  2. 服务器返回XML格式的字符串
  3. 浏览器解析XML,并局部更新页面
let request = new XMLHttpRequest()
request.open('GET', '/xxx')
request.send()

上述代码中open的第一个参数指定了请求的方式,如上文所说,AJAX允许任意方式的请求,因此POST、PUT、DELETE甚至程序员自己创造的方式都是允许的(只不过服务器不接受就是了23333)。

完整的AJAX

  let request = new XMLHttpRequest()
  request.open('GET', '/xxx') // 配置request
  request.send()
  request.onreadystatechange = ()=>{
    if(request.readyState === 4){ 
      console.log('请求响应都已经完成')
      if(request.status >= 200 && request.status < 300){
        console.log('说明请求成功')
      }else if(request.status >= 400){
        console.log('说明请求失败') 
      }
    }
  }

这部分的代码就通过 onreadystatechangerequest.status 来判断请求响应是否完成和请求是否成功。
onreadystatechange 表示当 readystate 值改变的时候就会执行回调函数, readystate 一共有0~4五个值:

描述
0 代理被创建,但尚未调用 open() 方法
1 open() 方法已经被调用
2 send() 方法已经被调用,并且头部和状态已经可获得
3 下载中; responseText 属性已经包含部分数据
4 下载操作已完成

request.status 就表示HTTP状态码分别有:1xx,2xx,3xx,4xx,5xx这一类值,用来表示HTTP请求成功与否。

相关文章

  • AJAX

    主要内容: ajax 是什么、原生ajax 写法和jQuery ajax写法。 AJAX 是什么 ajax,即As...

  • JavaScript进阶知识点--AJAX及JSON

    AJAX 关于 AJAX 什么是 AJAX AJAX 的全称是 Asynchronous JavaScript a...

  • HTML5权威指南 | 第五部分 高级功能

    三十二、使用AJAX(上) Ajax起步: 使用Ajax事件: Ajax请求的错误处理: 中止Ajax请求: 三十...

  • ajax学习笔记

    Ajax学习笔记 Ajax简介 1. Ajax是什么? Ajax : Asynochronous javascri...

  • AJAX

    一、简介 AJAX菜鸟教程 什么是 AJAX ? AJAX = 异步 JavaScript 和 XML。 AJAX...

  • js之AJAX复习

    异步交互和同步交互 什么是Ajax? Ajax的工作原理。 Ajax包含的技术: Ajax的缺陷: Ajax的核心...

  • 复习jQuery - ajax

    jQuery ajax - ajax() 方法 $.ajax({ url:'oo.php', ...

  • jQuery中Ajax请求的使用和四个步骤示例

    ajax() 方法用于执行 AJAX(异步 HTTP)请求,所有的 jQuery AJAX 方法都使用 ajax(...

  • ajax

    1、什么是ajax? 2、ajax的原理 3、ajax的核心对象 4、ajax的优点: ajax的缺点: 被jqu...

  • ajax

    Ajax 1 - 请求纯文本 Ajax 2 - 请求JSON数据 Ajax 3 - 请求Github接口 Ajax...

网友评论

      本文标题:AJAX

      本文链接:https://www.haomeiwen.com/subject/xpdzfftx.html