使用JMeter调用无Content-Type要求的API时遇415错误问题排查
解决方案:JMeter请求无Content-Type API时的415错误处理
问题根源
你遇到的FST_ERR_CTP_INVALID_MEDIA_TYPE是Fastify框架的错误,说明后端API明确要求不携带Content-Type请求头,但JMeter在两种场景下都自动注入了无效的Content-Type值:
- 未手动配置时,JMeter会根据请求参数/体自动添加
application/x-www-form-urlencoded; charset=UTF-8 - 手动设为空值时,JMeter会发送
undefined作为Content-Type值,同样不被后端接受
解决步骤
- 清理请求体/参数:如果是GET请求,确保
Parameters和Body Data栏为空;如果是POST请求且无需请求体,也清空这两个区域——JMeter会在检测到请求内容时自动添加Content-Type头。 - 用函数移除Content-Type:在HTTP Header Manager中添加一个头,键为
Content-Type,值填写${__null()}。这个JMeter内置函数会让框架完全不发送该请求头,而不是设置为空或无效值。 - 验证请求头:发送请求后,在View Results Tree的
Request标签下查看请求头列表,确认Content-Type未出现在其中。
额外提示
如果上述方法仍不生效,检查是否有其他配置组件(如自定义头管理器)在自动添加Content-Type,确保所有相关配置都统一处理该头的移除。
内容的提问来源于stack exchange,提问作者Islam
相关产品推荐
相关产品推荐

