You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Axios拦截器是否可以同时拦截fetch发起的请求?

结论

你写的Axios请求拦截器仅能拦截Axios发起的请求,完全无法拦截原生fetch()发起的请求。


原因说明

  • Axios的拦截器是Axios库内部封装的专属钩子逻辑,仅作用于通过Axios实例调用的请求流程,和浏览器原生的fetch API属于完全独立的两套运行体系,二者没有任何关联。
  • 原生fetch没有内置的拦截器机制,如果你需要全局拦截fetch请求、统一添加自定义头,可以通过重写全局fetch方法实现,参考代码如下:
// 保存原始fetch方法
const originalFetch = window.fetch;
// 重写全局fetch
window.fetch = function(input, init = {}) {
  // 合并自定义请求头
  init.headers = {
    ...init.headers,
    someCustomHeader: 'XYZ'
  };
  // 调用原始fetch发起请求
  return originalFetch.call(this, input, init);
};
  • 如果你需要同时统一拦截Axios和fetch两类请求,需要同时配置Axios拦截器、重写原生fetch方法,二者缺一不可。

内容的提问来源于stack exchange,提问作者copenndthagen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 01:39:01