前后端分离项目,前后端请求访问通,首先需要解决跨域问题
什么是跨域,跨域的前提是什么?
跨域的产生来源于现代浏览器所通用的同源策略(包括ajax/fetch请求,dom渲染:比如iframe等,这样在一定程度上防止了 CSRF 攻击)
跨域主要是浏览器行为,是客户端浏览器的行为,浏览器根据同源策略,判断是否是跨域。
服务器端和服务器互相请求,是没有跨域这种说法的
浏览器出于安全原因,浏览器限制从脚本内发起的跨源HTTP请求。 例如,XMLHttpRequest和Fetch API遵循同源策略。 这意味着使用这些API的Web应用程序只能从加载应用程序的同一个域请求HTTP资源,除非响应报文包含了正确CORS响应头
所有请求都会产生跨域吗?
简单请求不会产生跨域,复杂请求才会产生跨域,
跨域请求截断
跨域的情况下,请求依然跨域到达服务器,并且服务器可以正常响应,并返回数据,服务器不会报错,但是由于浏览器的同源策略并没有把服务器的响应数据给到浏览器,浏览器会报错(浏览器F12,控制台跨域看到),因为违反了浏览器的同源策略。