delete请求,express获取req.body失败

使用 Express 框架处理 DELETE 请求时,通常情况下是不会有请求体的。DELETE 请求通常用于删除资源,而不是发送数据。因此, Express 默认情况下不会解析 DELETE 请求的请求体。

如果需要在 DELETE 请求中发送数据,一种常见的做法是将数据作为 URL 参数或请求头的一部分发送,而不是在请求体中。可以在 URL 参数中包含数据,或者使用自定义的请求头来传递信息。

1、在前端代码中使用 Axios 发送 DELETE 请求,并在 URL 参数中包含数据

javascript 复制代码
axios.delete('/api/resource', {
  params: { key: 'value' }
})
  .then(response => {
    // 处理响应
  })
  .catch(error => {
    // 处理错误
  });

然后,在 Express 后端中,可以通过 req.query 访问 URL 参数:

javascript 复制代码
app.delete('/api/resource', (req, res) => {
  const data = req.query;
  // 处理数据
  res.send('DELETE 请求处理成功');
});

2、使用路径参数传递数据

javascript 复制代码
axios.delete('/api/resource/data值', {
})

然后,在 Express 后端中,可以通过 req.params 获取路径参数:

javascript 复制代码
app.delete('/api/resource/:id', (req, res) => {
  const data = req.params;
  res.send('DELETE 请求处理成功');
});
javascript 复制代码
例如要传递的数据为id:"323"
请求:axios.delete('/api/resource/323', {
})
接收:app.delete('/api/resource/:id', (req, res) => {
  const id= req.params.id;
});
相关推荐
沐土Arvin11 分钟前
深入理解 requestIdleCallback:浏览器空闲时段的性能优化利器
开发语言·前端·javascript·设计模式·html
专注VB编程开发20年13 分钟前
VB.NET关于接口实现与简化设计的分析,封装其他类
java·前端·数据库
小妖66622 分钟前
css 中 content: “\e6d0“ 怎么变成图标的?
前端·css
L耀早睡1 小时前
mapreduce打包运行
大数据·前端·spark·mapreduce
HouGISer1 小时前
副业小程序YUERGS,从开发到变现
前端·小程序
outstanding木槿1 小时前
react中安装依赖时的问题 【集合】
前端·javascript·react.js·node.js
霸王蟹2 小时前
React中useState中更新是同步的还是异步的?
前端·javascript·笔记·学习·react.js·前端框架
霸王蟹2 小时前
React Hooks 必须在组件最顶层调用的原因解析
前端·javascript·笔记·学习·react.js
专注VB编程开发20年2 小时前
asp.net IHttpHandler 对分块传输编码的支持,IIs web服务器后端技术
服务器·前端·asp.net
爱分享的程序员3 小时前
全栈项目搭建指南:Nuxt.js + Node.js + MongoDB
前端