首页 > 解决方案 > 尝试从我自己的本地主机读取 JSON 数据时出现 CORS 错误

问题描述

我有一个将 JSON 数据输出到屏幕的节点('test.js')脚本。我编译并运行它,当我在浏览器中打开站点http://localhost:3000/myWorkspace/Projects/MW-KD/时,我可以看到 json 数据 {'kills':22,'deaths':11, 'map':'someMap','kdRatio':2.......} 在屏幕上。

现在我想使用 $.ajax 从另一个 javascript 文件中读取这些数据。顺便说一句,我尝试了一切。($.get()、$.post()、$.getJSON、fetch() 等)

我使用的代码是:

let settings = {
  'cache': false,
  'dataType': "json",
  'async': true,
  'crossDomain': true,
  'url": "http://localhost:3000/myWorkspace/Projects/MW-KD/',
  "method": "GET",
  "headers": {
    "accept": "application/json",
    "Access-Control-Allow-Origin":"*"
  }
}

let testJSON = $.ajax(settings)
testJSON.done((data) => console.log(data))

我尝试了人们使用的每一个组合,但我仍然得到一个 f.... CORS 错误。

从源“ http://localhost ”访问“ http://localhost:3000/myWorkspace/Projects/MW-KD/?_=1587570791195 ”的 XMLHttpRequest已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。

这个 CORS 错误已经困扰我好几天了。我在使用 Activisions API 时得到了它们。我在使用 javascript 时得到了它们。然后我想我可以使用使用 NODE 的 3rd 方 API。所以我安装并查找了基础知识。我让 API 运行并从 Activisions API 返回结果。

现在我无法在自己的机器上读取数据。我快要疯了。

标签: javascriptnode.jscors

解决方案


推荐阅读