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

POST请求Content-Type设置不生效,始终显示text/plain问题求助

问题:设置Content-Type: application/json后浏览器仍显示text/plain

调用API时已在请求头中设置Content-Type: 'application/json',但浏览器请求头仍显示Content-Type: 'text/plain',导致后端接收到的payload对应的Content-Type为text/plain。

原代码如下:

export const abctrigger = (payload , signal) => {
  Return fetch (API_URL, {
    method: post,
    Signal: signal
    Body: JSON.stringify(payload),
    headers: {
      Content-Type : 'application/json'
    }
  })
    .then((response) => response.text())
    .then((response) => {
      return respon se;
    })
}

问题原因及修复方案

你的代码存在语法和大小写错误,导致fetch配置未被正确解析,请求头设置失效:

  • JavaScript关键字和fetch配置项需小写:Return改为return,Signal改为signal,Body改为body
  • method的值post是字符串,必须加引号,否则会被当作未定义变量处理
  • Signal: signal后缺少逗号,导致后续的Body和headers配置被忽略
  • 拼写错误:第二个then中的respon se需修正为response

修正后的代码

export const abctrigger = (payload, signal) => {
  return fetch(API_URL, {
    method: 'post',
    signal: signal,
    body: JSON.stringify(payload),
    headers: {
      'Content-Type': 'application/json'
    }
  })
    .then((response) => response.text())
    .then((response) => {
      return response;
    })
}

修正后,fetch会正确读取headers配置,浏览器请求头将显示Content-Type: application/json,后端也能正确识别payload类型。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 12:22:39