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

Spring Boot+React删除指定ID学生实体出现400错误排查

问题分析与解决

核心问题:请求URL未正确带入学生ID

你React代码里的请求URL写死成了"http://localhost:8080/student/delete/{id}",这里的{id}就是个普通字符串,不是要删除的学生实际ID。后端收到的请求路径是/student/delete/{id},根本识别不了这个路径,所以返回400错误。

修复方法

把React里的fetch URL改成模板字符串,用${id}动态替换成实际的学生ID:

const handleDelete = (id) => {
    fetch(`http://localhost:8080/student/delete/${id}`, {
        method: "DELETE",
        headers: {"Accept":"application/json", "Content-Type":"application/json"}
    }).then(() => {
        let updatedStudents = [...students].filter(i => i.id !== id);
        setStudents(updatedStudents);
    });
}

额外检查点

  • 跨域问题:如果改完还是报错,给Spring Boot的控制器类加上@CrossOrigin注解,因为前端(通常是3000端口)和后端(8080端口)属于不同域名,存在跨域访问限制。
  • ID类型匹配:确认传入的id是数字类型,和后端@PathVariable int id的类型一致,别传成字符串导致后端解析失败。
  • 后端逻辑:检查studentService.deleteStudentById(id)方法是否能正常连接数据库并执行删除操作,确保后端服务本身没有异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 05:36:18