使用 javascript 和 ajax 读取 json 对象由于 CORS 策略而出现错误
Posted
技术标签:
【中文标题】使用 javascript 和 ajax 读取 json 对象由于 CORS 策略而出现错误【英文标题】:read json object using javascript and ajax i got error due to CORS policy 【发布时间】:2020-04-28 23:52:35 【问题描述】:<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
function ondata()
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function()
if(this.readyState==4 && this.status==200)
var javaobj = JSON.parse(xhttp.response);
document.getElementById('mass').innerHTML=javaobj.name;
;
xhttp.open("GET","student.json",true);
xhttp.send();
</script>
<input type="button"name="name" onclick="ondata()" value="Click"/>
<div id="mass"></div>
</body>
</html>
我得到了错误 6hp.html:21 从源“null”访问“file:///C:/Users/Admin/Desktop/ind/ip-simple/student.json”的 XMLHttpRequest 已被 CORS 策略阻止:跨源请求是仅支持协议方案:http、data、chrome、chrome-extension、https
【问题讨论】:
是否有本地(开发)服务器正在运行?您的浏览器无法直接从文件系统请求文件。 【参考方案1】:您的代码在文件结构方面对我有用 like this。尝试将 json 文件移动到与 html 文件相同的目录。
我可能是错的,但是浏览器将您可以从脚本访问的文件限制为同一目录中的文件。
【讨论】:
我通过tomcat服务器运行我的Ajax代码清除了错误以上是关于使用 javascript 和 ajax 读取 json 对象由于 CORS 策略而出现错误的主要内容,如果未能解决你的问题,请参考以下文章
从 Javascript、Ajax、IE 访问二进制数据:可以从 Javascript(不是 VB)读取 responseBody 吗?