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

Spring项目出现415错误排查求助:JS发起请求已添加Jackson依赖仍未解决

解决Spring项目POST请求415 Unsupported Media Type错误

首先看你客户端代码里的一个明显拼写错误——fetch配置里的header应该是headers(复数形式)!这个错误会导致你设置的Content-Type: application/json请求头根本没被发送到服务器,服务器自然识别不了请求体的JSON格式,直接返回415错误。

先把客户端代码改成这样:

let data = { id: category.id, act: "addAdmin", target: input, };
fetch("http://localhost:8888/categoryset", {
    method: "POST",
    // 注意这里是headers,不是header!
    headers: { "Content-Type": "application/json", },
    body: JSON.stringify(data),
});

改完之后,你可以用浏览器的开发者工具(Network标签)查看这个请求的Request Headers,确认Content-Type确实是application/json。

如果改完还是有问题,再排查下面几个点:

  • 确认category.id是有效的数字:你的DTO里id是int类型,如果前端传的是字符串或者非数字值,Jackson反序列化可能出问题,但这种情况一般返回400错误,不过还是要确认一下。
  • 检查其他接口的请求配置:你说其他相同代码的URL正常,对比一下那些请求的fetch配置,是不是也用了headers而不是header?
  • 确认Jackson依赖正常加载:虽然你说已经添加了,但可以检查一下项目的依赖树,比如Maven的mvn dependency:tree,确保com.fasterxml.jackson.core:jackson-databind存在,Spring Boot的spring-boot-starter-web默认已经包含这个依赖,所以大概率没问题。

从你提供的代码来看,服务端的配置是没问题的:DTO的字段和请求体对应,控制器也指定了consumes = MediaType.APPLICATION_JSON_VALUE,所以核心问题应该就是客户端的请求头拼写错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 13:17:43