axios.interceptors.request.use简介

这篇具有很好参考价值的文章主要介绍了axios.interceptors.request.use简介。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

axios.interceptors.request.use返回config

axios.interceptors.request.use方法返回一个函数,该函数接受一个参数config,并返回configPromise`,这样可以修改请求配置或在发送请求之前执行其他操作。

下面是一个示例,其中拦截器在请求头中添加了一个token:

axios.interceptors.request.use(function(config) {
  const token = localStorage.getItem('token');
  config.headers.Authorization = token ? `Bearer ${token}` : '';
  return config;
}, function(error) {
  return Promise.reject(error);
});

在这个示例中,拦截器函数首先从本地存储中获取token,然后将其添加到请求头的Authorization字段中。然后,它返回修改后的config对象。如果发生错误,它将返回一个被拒绝的Promise对象,这样错误就可以通过catch方法来捕获。

config中的属性介绍

axios.interceptors.request.use()是一个拦截器,它可以在发送请求之前对请求进行拦截并进行一些处理。它的参数是一个函数,该函数接受一个 config 对象作为参数,其中包含了请求的各种配置信息。

以下是 config 对象中一些常用的属性:

  • url: 请求的 URL 地址。
  • method: 请求的 HTTP 方法,如 GET、POST 等。
  • headers: 请求头信息,可以设置一些自定义的头部信息,如认证信息等。
  • params: GET 请求中的查询参数,会被拼接在 URL 后面,如 http://example.com/api?foo=bar
  • data: POST 请求中的请求体,可以是一个普通对象、FormData 对象或者一个字符串。
  • timeout: 请求超时时间,单位为毫秒。
  • withCredentials: 是否携带跨域请求的凭证信息,如 Cookies 等。
  • auth: HTTP 基本认证信息,包含用户名和密码。

除了以上常用属性外,config 对象还有其他一些属性,具体可以参考 axios 的官方文档。在 axios.interceptors.request.use() 拦截器中,我们可以通过修改 config 对象中的属性来对请求进行自定义处理。处理完之后,需要将 config 对象返回,否则请求将被阻止。

先赞后看,养成习惯!!!^ _ ^ ❤️ ❤️ ❤️
码字不易,大家的支持就是我的坚持下去的动力。点赞后不要忘了关注我哦!
文章来源地址https://www.toymoban.com/news/detail-448591.html

到了这里,关于axios.interceptors.request.use简介的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue全家桶进阶之路47:Vue3 Axios拦截器封装成request文件

    可以将Axios拦截器封装成一个单独的request文件,以便在整个应用程序中重复使用。 以下是一个示例,展示如何将Axios拦截器封装成一个request文件: 1、创建一个名为request.js的新文件,并导入Axios: 2、创建一个名为request的函数,并将其导出: 这将创建一个名为request的函数,

    2023年04月21日
    浏览(35)
  • Vue2 axios 发请求报400错误 “Error: Request failed with status code 400“

    最近在做一个项目,后端写了一个登录接口,postman可以正常请求。但我axios发请求出现400错误 \\\"Error: Request failed with status code 400\\\" 请求: 错误:  我研究了两天,查了无数资料,最后和朋友一起找到解决方法 原因:后端没跟我说需要什么格式的数据,我以为是默认的json,后来

    2024年02月11日
    浏览(56)
  • (已解决)解决Vue3在使用 vue add axios时报错:Cannot read properties of undefined (reading ‘use‘)

    刚入门前端的小白,在学习Vue的前后端分离项目的时候,使用 vue add axios 安装插件准备进行前后端的数据交互,出现了Cannot read properties of undefined (reading ‘use’)错误 Vue2在安装插件时候使用的是: Vue.use(Plugin) ,而在Vue3不再支持这种方式 1.在目录 src-plugins-axios.js 找到 Vue.use

    2024年02月10日
    浏览(33)
  • 报错 “Required request body is missing: public“ 的解决方案以及注意点(Vue, axios拦截器)

    在使用axios拦截器时,返回500,报了\\\"Required request body is missing: public\\\"的错误,我的拦截器是这么写的,参考了以下链接: http://www.45fan.com/article.php?aid=1D2dBLoGSZ31XuGv#_label1 我这里的基础地址在我本地换成了接口的域名地址。 然后在api/index.js的文件里面,这样应用的:  然后报错

    2024年02月10日
    浏览(48)
  • Python之Requests模块简介与安装

    Requests模块简介 在python的标准库中,虽然提供了urllib,utllib2,httplib,但是做接口测试,requests使用更加方便快捷,正如官方说的,“让HTTP服务人类”。 Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库,Requests它会比urllib更加方便,可以节约我们大量

    2024年02月09日
    浏览(38)
  • axios发送POST请求返回400状态:Uncaught (in promise) Error: Request failed with status code 400。

    问题:在postman上发送post请求时就能成功获得返回数据,但是在前端发送却得不到返回数据。 400错误,大概率就是 请求头、数据类型/参数名 ,前后端不一致 排查前端:发现前端的post请求头中 contentType: application/json 格式 排查后端:后端的接口的接收方式 ,已经添加 @Cros

    2024年02月09日
    浏览(47)
  • 爬虫requests使用代理报错Your proxy appears to only use HTTP and not HTTPS...

    python版本:3.9.4 requests版本:2.28.2 详细报错如下 代理使用如下: 使用如下代理设置,报错得到解决 总结:由于之前使用的是python3.6.8版本,代理设置为’https’: \\\'https://xxxx’可以正常使用,而升级到python3.9.4则出现了上述问题。建议代理的使用统一为 ‘https’: ‘http://xxxx’

    2024年02月15日
    浏览(48)
  • AssertionError: Invalid CUDA ‘--device 0,1,2‘ requested, use ‘--device cpu‘ or pass valid CUDA devic

    错误: AssertionError: Invalid CUDA \\\'--device 0,1,2\\\' requested, use \\\'--device cpu\\\' or pass valid CUDA device(s) 在运行yolov5时,出现这个错误,意思是没有可用的cuda,无法使用GPU训练。 1.首先用nvidia-smi查看是否真的有三张显卡。很有可能是没有这么多的。这里面的cuda–version的版本是最高支持的c

    2024年02月11日
    浏览(30)
  • axios/ajax 请求头部添加自定义字段报错(has been blocked by CORS policy: Request header field authorization is ...

    这个错误是由于浏览器的安全机制所引起的,即跨域资源共享(CORS)策略。当浏览器发现一个跨域请求时,会发送一个预检请求(Preflight Request)来确认服务器是否允许跨域请求。在预检请求中,浏览器会检查请求头中的字段是否被服务器允许。如果请求头中包含了服务器不

    2024年02月16日
    浏览(26)
  • KEIL5--Error: L6915E: Library reports error: __use_no_semihosting was requested报错解决方法

    __use_no_semihosting was requested:要求不使用半主机模式。        比较简单的一个解决方法就是点击“魔术棒” ,在Target标签下有个Use MicroLIB,勾选Use MicroLIB,再编译就不会报错了。        ”Use MicroLIB”,这是KEIL自带的一个简易的库,使用Use MicroLIB微库不需要强调不使用半

    2024年02月10日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包