Javascript 飞行前响应错误

Javascript 飞行前响应错误,javascript,json,ajax,cors,preflight,Javascript,Json,Ajax,Cors,Preflight,我正在尝试使用Ajax从API请求信息。尝试运行以下代码时,我收到以下错误: 无法加载XMLHttpRequest。请求标头字段缓存控制不可用 飞行前响应中的访问控制允许标头允许 代码如下: var Onion = { "async": true, "crossDomain": true, "url": "https://webhose.io/search?token=fc70c82d-7bd6-4bed-aafe-4d4e65c7e5db&format=json&q

我正在尝试使用Ajax从API请求信息。尝试运行以下代码时,我收到以下错误:

无法加载XMLHttpRequest。请求标头字段缓存控制不可用 飞行前响应中的访问控制允许标头允许

代码如下:

var Onion = {
  "async": true,
  "crossDomain": true,
  "url": "https://webhose.io/search?token=fc70c82d-7bd6-4bed-aafe-4d4e65c7e5db&format=json&q=&site=theonion.com&size=12",
  "dataType": "json",
  "method": "GET",
  "headers": {
    "cache-control": "no-cache",
    "postman-token": "9a49be98-19cb-ebc6-9f52-4be90c88222b",
    "Access-Control-Allow-Headers": true,
  }
}

$.ajax(Onion).done(function (response) {
  console.log(response);
  console.log(response.posts[0].title);
我是一个初学者,我相信我需要在标题中添加一些东西。有什么建议吗


提前感谢您的帮助

您正在请求中发送这3个HTTP头:

"cache-control": "no-cache"
"postman-token": "9a49be98-19cb-ebc6-9f52-4be90c88222b"
"Access-Control-Allow-Headers": true
浏览器正在抛出此错误:

无法加载XMLHttpRequest . 不允许使用请求标头字段邮递员令牌 访问控制允许飞行前响应中的标头

在HTTP响应中,远程服务器向您发送以下标头:

Access-Control-Allow-Headers:accept, origin, Content-type, x-json, x-prototype-version, x-requested-with, authorization

这意味着HTTP请求中既不允许缓存控制,也不允许邮递员令牌,也不允许访问控制允许标头HTTP标头,只允许accept、origin、Content type、x-json、x-prototype-version、x-requested-with、,允许授权。

这意味着您尝试访问的站点未配置为允许授权。飞行前请求在发送检查CORS有效性的最终请求之前完成。检查以下答案: