axios的简单的使用方法

Axios 是一个属于promise 的网络请求库,作用于node.js 和浏览器中。 在服务端它使用原生 node.js http模块, 而在客户端则使用 XMLHttpRequests,下面我们来看下axios的简单的使用方法

 

axios的简单的使用方法

配置请求拦截器
在请求拦截时可以做常规配置,如请求头添加token共有数据等

_axios.interceptors.request.use(config=>{
 // 添加token
 config.headers.token = 'token';
 // do something
},error=>Promise.reject(error))

配置返回拦截器

_axios.interceptors.response.use(config=>{
    // do something
},error=>{
    // 做统一的错误处理
    // 401 需授权
    // 404 接口不存在
    // 等等
})

 

取消重复请求
在实用中需要一个按钮多次快速点击,这样就会在很短时间内完成多次请求
在此我们会用到 axios.CancelToken 这个方法

封装取消请求的方法

class CancelToken {
  constructor() {
    this.store = new Map();
  }
  add (config)  {
      const key = this.getKey(config);
      new axios.CancelToken((cancel) => {
        if (this.store.has(key)) {
            this.remove(config)
        }
        this.store.set(key, cancel);
      });
  }
  remove (config)  {
      const key = this.getKey(config);
    if (this.store.has(key)) {
      let cancel = this.store.get(key);
      cancel(key);
      this.store.delete(key);
    }
  }
  // 获取唯一的key
  getKey(config){
    const { method, url, params, data } = config;
    return [method, url, params, data].join('-');
  }
}

使用CancelToken方法

const cancelToken = new CancelToken();
// 请求拦截器
axios.interceptors.request.use(config=>{
    cancelToken.add(config);
},error=>Promise.reject(error))

// 接收拦截器
axios.interceptors.response.use(
    response => {
        const config = response.config;
        cancelToken.remove(config)
        Promise.resolve(response)
    },
    error => {
        return Promise.reject(error);
    }
);

以上就是关于“axios的简单的使用方法”的相关解答如需购买测试PHP主机,推荐酷番云共享虚拟主机、独享IP虚拟主机齐备,各类配置均有,满足不同网站建设需求;另外提供免费虚拟主机,可供测试,让您快速上线网站。

选购地址:https://www.kufanyun.com/host/

 

图片来源于AI模型,如侵权请联系管理员。作者:路飞,如若转载,请注明出处:https://www.kufanyun.com/ask/1083.html

(0)
上一篇 2021年9月28日 17:01
下一篇 2021年9月30日 15:31

相关推荐

  • 淘宝免费二级域名怎么申请,淘宝二级域名申请流程

    淘宝官方已全面停止向新入驻商家提供免费二级域名服务,目前所有淘宝店铺均强制绑定淘宝统一域名(如 item.taobao.com 或 m.taobao.com),商家若需独立域名需通过第三方建站工具或转向其他电商平台,这一结论基于阿里巴巴集团2024年至2026年持续深化的“平台闭环”战略,在早期的电商生态中,二……

    2026年6月8日
    08785
  • 域名转出联动操作?域名转出流程

    域名转出是网站迁移或资产优化的关键步骤,2026年百度SEO标准下,核心在于确保WHOIS信息一致、ICP备案主体匹配及HTTPS配置无缝衔接,以维持权重平稳过渡,在数字化资产日益珍贵的当下,域名不仅是网站的入口,更是品牌信誉与搜索权重的载体,许多站长在面临主机商更替、域名到期或集团内部架构调整时,常因操作不当……

    2026年6月13日
    01132
  • 您的域名怎么选对GEO优化好?,域名怎么选对GEO

    您的域名是网站第一印象与SEO优化的双重基石,选择合适的域名后缀、品牌匹配度及历史记录,能在2026年百度算法下显著提升搜索排名与用户信任,域名选择的核心原则品牌匹配度与记忆成本域名应与企业品牌或核心业务直接关联,避免数字或连词造成混淆,根据2026年《中国域名市场白皮书》,超过70%的用户会优先点击包含品牌词……

    2026年8月9日
    0743
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 域名注册时是否必须添加www前缀?这样做有何利弊?

    域名注册要加www吗?什么是域名?域名是互联网上用于标识网站地址的字符串,它将复杂的IP地址转换成易于记忆的字符,用户通过输入域名,浏览器能够快速找到对应的网站,域名注册时是否需要加www?域名注册本身不需要加www域名注册时,只需输入希望注册的域名即可,如果你想要注册“example.com”,那么你只需在注……

    2025年12月7日
    04.1K0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注