接口415排查:JSON和表单不能只改一个请求头
请求体看起来有内容,服务端仍拒绝,可能是媒体类型与实际格式不一致。本文用JSON和表单两种输入说明如何逐项对照。
先确认后端期待什么
接口415排查应先查接口约定:接收JSON、普通表单还是文件表单。415表示服务端不接受当前消息内容格式,可能涉及Content-Type、编码或实际内容。不要只把请求头改成application/json,却继续发送另一种格式的数据。
在网络面板分别查看请求头与原始请求体。JSON应由序列化函数产生,字段名、引号和布尔值遵守格式;表单则按接口要求编码。涉及上传时,注意多部分表单需要正确的边界信息,使用浏览器FormData通常不应自行硬写不完整的Content-Type。
用最小输入逐步恢复
先去掉可选字段和文件,仅发送文档中的最小合法数据。成功后逐个恢复内容,观察在哪一步出现415。记录客户端版本和后端日志,区分“格式不支持”与后续字段校验失败,两者的修复方式不同。
不要通过放宽服务端接受所有类型来掩盖客户端错误。修复后至少测试合法JSON、错误媒体类型和正常文件上传等实际使用场景,确认服务端能正确区分。排错日志只保存脱敏后的请求结构,不保存用户文件正文或账号凭据。这样既能复现问题,又不必把真实业务数据复制到测试环境。
官方参考
资料核对日期:2026年10月26日。
MDN:415 Unsupported Media Type
本文新增价值
请求体看起来有内容,服务端仍拒绝,可能是媒体类型与实际格式不一致。本文用JSON和表单两种输入说明如何逐项对照。本文补充适用边界、输入对照与验收方法;操作建议为综合整理,未将官方示例当成本网站实测结果。
请求体看起来有内容,服务端仍拒绝,可能是媒体类型与实际格式不一致。本文用JSON和表单两种输入说明如何逐项对照。本文补充适用边界、输入对照与验收方法;操作建议为综合整理,未将官方示例当成本网站实测结果。