为什么标题中的内容类型仍然是text / plain,尽管我将其设置为application / json

时间:2018-03-22 12:14:16

标签: javascript json reactjs http express

我使用fetch()发布json数据,如下所示

var arr = [{
  "1193312":[
    {
      "time":"2018-02-20",
      "description":"Item 1"
    }
  ],
  "1193314":[
    {
      "time":"2018-02-21",
      "itemDesc":"Item 2"}, 
    {
      "time":"2018-02-21",
      "description":"Item 3"
    }
  ]
}];
var data = arr[0];
var res = Object.entries(data).map(([key, value]) => ({[key]: value}));
console.log(res);

我总是在我的快速服务器路由器中的request.body中获取{},并且我发现问题在于发送请求,它始终是&text; / text'。为什么会这样?

enter image description here

1 个答案:

答案 0 :(得分:1)

您将模式设置为no-cors

将内容类型设置为application/json需要CORS的许可...

  

Content-Type标头[不触发预检CORS请求]的唯一允许值为:

     
      
  • 应用程序/ x-WWW窗体-urlencoded
  •   
  • 的multipart / form-data的
  •   
  • 文本/纯
  •   

- mdn

...你告诉fetch不要求。由于您未获得许可,因此您无法获得许可,因此提取将恢复为text/plain