axios之拦截器与get,post的区别(异步,同步)

707 阅读2分钟

拦截器

image.png

拦截器的工作流程

  1.  axios 发起请求
    
  2.  执行 请求拦截器 : 添加ajax发送请求之前的操作
    
  3.  服务器 接收、处理、响应 请求
    
  4.  执行 响应拦截器 : 添加服务器响应之后的操作
    
  5.  axios 接收响应(执行then方法)
    
    //语法
    // 添加请求拦截器
    axios.interceptors.request.use(function (config) {
        // 在发送请求之前做些什么
        return config;
      }, function (error) {
        // 对请求错误做些什么
        return Promise.reject(error);
      });

    // 添加响应拦截器
    axios.interceptors.response.use(function (response) {
        // 对响应数据做点什么
        return response;
      }, function (error) {
        // 对响应错误做点什么
        return Promise.reject(error);
      });

基地址

基地址:如果url写错或不写则以基地址为准

    axios.defaults.baseURL = 'https://api.example.com';

AJAX的组成

Ajax(阿贾克斯):全称 Asynchronous Javascript And XML(异步的js与xml)

  • 用js发送异步的网络请求

  • A : Asynchronous 异步

    • 同步 : 指的是代码按照从上往下顺序执行

    • 异步 : 代码不会立即执行,而是要等一会儿执行

      • 目前我们学过的ECMAScript只有两个语法是异步的: 定时器 与 ajax
      • DOM事件也是属于异步的,但是这个是属于DOM的执行机制。所以一般在讨论js同步和异步的时候,主要以js为主,DOM一般不讨论。
  • J:Javascript

  • A :And

  • X : XML 与 XMLHttpRequest

    • XML : 解决跨平台数据传输。

      • 在JSON没有出来以前, 网络传输主要以XML格式数据为主。 后来JSON问世,逐渐取代XML。 但是由于ajax技术出来的比json早,因此xml这个称呼一直保留至今

post请求与get请求 的区别

1.传参方式不同

   get:直接在地址后面拼接(请求行)

  post:在请求体中传参

2.大小限制不同

   get:有大小限制一般在2-5M

  post:没有大小限制

3.传输速度不同

  get:传输速度快

  post:传输速度慢

4.安全性不同

  get:参数会暴露在地址中

  post:在请求体中传参(更为安全)

其他请求方式

请求方式描述特点
post一般用于新增数据请求体传参
get一般用于查询数据请求行(url)传参
delete一般用于删除数据请求体传参
put一般用于更新全部数据请求体传参
patch一般用于更新局部数据请求体传参