由于CORS在Firefox中缺少令牌,因此提取请求失败

时间:2019-06-19 15:41:00

标签: java spring cors

当尝试在firefox中发出POST请求时,出现以下错误消息:

跨域请求被阻止:“同源起源”策略禁止读取https://example.net/graphql处的远程资源。 (原因:CORS预检通道中的CORS标头“ Access-Control-Allow-Headers”中缺少令牌“ content-type”。

跨域请求被阻止:“同源起源”策略禁止读取https://example.net/graphql处的远程资源。 (原因:CORS请求未成功。)

相同的请求在Chrome中成功执行。我发送的请求是:

method: 'POST',
  headers:{
    'x-client-id': '123',
    'content-type': 'application/json; charset=UTF-8'
  },
  body: JSON.stringify({
    query: "query ..."
  })
})
.then(res => res.json())
.then(console.log);```

I am issuing this request while on another https origin.

My setup in my code for cors is simply the spring annotation:
```@CrossOrigin(allowedHeaders = {"content-type", "x-client-id"})```

1 个答案:

答案 0 :(得分:-1)

您将需要以下标题:

  

访问控制允许来源:http://api.bob.com

     

访问控制允许方法:GET,POST,PUT

     

访问控制允许标题:X-Custom-Header内容类型:text / html;

     

charset = utf-8

在目标上按

以允许CORS。如果您无权访问远程资料,则将服务器用作代理并从那里发送请求,然后将响应返回到浏览器。