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

DELETE请求不支持异常排查:SpringBoot前后端代码及URL分析

问题原因及解决办法

核心问题

后端接口定义与前端请求方式不匹配:

  • 后端通过@DeleteMapping("{ids}") + @PathVariable,期望接收路径变量形式的请求URL,比如/category/1397844263642378242
  • 前端实际发送的是查询参数形式的URL:/category?ids=1397844263642378242,后端找不到对应映射的接口,因此抛出HttpRequestMethodNotSupportedException

两种修复方案

方案一:修改后端代码(适配前端请求)

将@PathVariable替换为@RequestParam,同时调整@DeleteMapping的路径:

@RequestMapping("/category")
public class CategoryController {

    @DeleteMapping
    public R<String> delete(@RequestParam("ids") Long ids){
        categoryService.remove(ids);
        return R.success("删除成功");
    }
}

方案二:修改前端代码(适配后端接口)

把参数拼接到URL路径中,而非使用params传递:

const deleteCategory = (ids) => {
  return $axios({
    url: `/category/${ids}`,
    method: 'delete'
  })
}

额外扩展(批量删除场景)

如果需要支持批量删除多个ID,可调整如下:
后端代码:

@RequestMapping("/category")
public class CategoryController {

    @DeleteMapping
    public R<String> delete(@RequestParam("ids") List<Long> ids){
        categoryService.removeByIds(ids);
        return R.success("删除成功");
    }
}

前端代码(传递多个ID时,参数格式为ids=[1,2,3]):

const deleteCategory = (ids) => {
  return $axios({
    url: '/category',
    method: 'delete',
    params: { ids }
  })
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 17:17:05