当前位置: 首页 > article >正文

[ BUG ] 踩坑 Axios Delete 请求传参

踩坑 Axios Delete 请求传参

问题描述

今天在写前后端交互时,我想将 data 数据通过 delete 进行传参 axios.delete("/info", data),但是发现后端一直提示参数错误,我看了看代码也没错啊。跟 postpatch 一样的写法为什么会出现参数错误。然后花了大量时间检查代码,最终还是不行。

无奈我只能在网上寻找答案,最后才发现是因为 Delete 本身的问题,下面是问题的解决办法:

解决办法

我们将数据对象 data 作为第二个参数直接传递给 Axiospost 方法。Axios 会将该对象自动转换为请求体,并发送到服务器上。

const text = async () => {
  // 请求Post
  await axios.post("/info", data)
  // 请求Patch
  await axios.patch("/info", data)

  // 请求Delete
  await axios.delete("/info", data) // 错误写法
}

然而,对于 DELETE 请求,情况略有不同。根据 RESTful API 设计,DELETE 请求通常不包含请求体,而是将数据放在请求 URL 中。但是,一些后端框架默认不解析 DELETE 请求的请求体,因此如果需要在 DELETE 请求中使用请求体,我们需要通知后端框架解析请求体数据。

为了解决这个问题,Axios 提供了一种特殊的方式。我们需要使用一个对象字面量作为第二个参数,且该对象包含一个自定义的 data 字段来传递对象数据

axios.delete("/info", { data })

总结
POST 请求中,我们可以直接将数据对象作为第二个参数传递给 Axios,因为 POST 请求通常包含请求体。但是在 DELETE 请求中,我们需要使用对象字面量套一个自定义的 data 作为第二个参数,并使用 data 字段指定数据。


http://www.kler.cn/a/147085.html

相关文章:

  • 自制C++游戏头文件:C++自己的游戏头文件!!!(后续会更新)
  • 【GPTs】Gif-PT:DALL·E制作创意动图与精灵动画
  • 怎样在软件设计中选择使用GOF设计模式
  • el-table中增加校验方法(二)
  • 风电电力系统低碳调度论文阅读第一期
  • 【操作系统实验课】Makefile与编译
  • kafka入门(二): 位移提交
  • 3D点云目标检测:VoxelNex解读(带源码/未完)
  • 微软 Edge 浏览器目前无法支持 avif 格式
  • gitt开源项目的意义,公司为什么会对在gitt上有开源项目的人更大机会
  • 7 最大的以1为边界的正方形
  • Idea空白目录自动折叠的问题
  • 淘宝平台商品详情平台订单接入说明
  • Python实现FA萤火虫优化算法优化循环神经网络分类模型(LSTM分类算法)项目实战
  • 智慧工厂人员定位系统源码,融合位置物联网、GIS可视化等技术,实现对人员、物资精确定位管理
  • 【网络安全】-常见的网站攻击方式详解
  • Mysql的分库分表
  • 诺威信,浪潮云,微众区块链
  • 单片机学习4——中断的概念
  • 使用 Java 来读取 Excel 文件,检查每一行中的 URL,并将不符合条件的行标记为红色
  • 数据结构 / 顺序表操作 / 顺序表尾部删除
  • C语言进阶之笔试题详解(1)
  • 基于python的NBA球员数据可视化分析的设计与实现
  • EFCore乐观并发
  • uniapp高德、百度、腾讯地图配置 SHA1
  • C语言第三十四弹--矩形逆置