跨域的产生
跨域一般都是前端JavaScript代码发送了一个非同源的请求,浏览器收到服务器的响应后,如果服务器不支持跨域的情况,浏览器会报错。
这里有个点需要注意
跨域是浏览器报出来的错误,它不是前端代码导致的错误,但是会影响前端代码的功能。
同源请求
协议+地址+端口,三者完全相同的两个网络请求,浏览器才会认为是同源请求,否则就会有跨域问题。例如
http://www.baidu.com:8080
https://www.baidu.com:8080
http://www.baidu.com:80,这写都是不同源请求,会有产生跨域问题。
http://www.toutiao.com/login
http://www.toutiao.com/news,这两个就是同源请求
CORS解决跨域
以上内容出自B站,视频里有详细讲解CORS原理(只有Node服务器的演示配置)
【禹神:一小时彻底搞懂跨域&解决方案】
不同的服务器,配置支持跨域的方式不一样,但是原理都是使用CORS这套逻辑。
例如SpringBoot支持跨域具体配置方法,需要另行查看其他文章。小白这里还没有学习到!!!