一:为什么CORS会有跨域问题
跨域问题的出现,是因为浏览器的同源策略对ajax请求进行阻拦了,但是并不是所有的请求都给做当做跨域,;像是一般的href属性,a标签什么的都不进行拦截
二.什么是同源策略
同源策略是一种约定,它是浏览器最核心也会是最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。
它约定请求的url地址,必须与浏览器的url地址处于同域上,也就是域名,端口,协议都相同。
如果不同,就会报错:
我们可以看一下如何请求非跨域,同源 以及请求非同源,跨域
代码演示如下:
<body>
<button class="btn1">请求非跨域、同源</button>
<button class="btn2">请求非同源,跨域</button>
</body>
<script>
document.querySelector(".btn1").onclick = function(){
let xhr = new XMLHttpRequest();
xhr.open(