跨域问题
跨域问题本质上是违背了同源策略,它规定了:协议名、域名、端口号 必须一致
为什么需要同源策略?
主要是为了安全,如果没有同源策略限制,在浏览器中的 cookie 等其他数据可以被任意读取,
不同域下了 DOM 任意操作,ajax 任意请求其他网络的数据、隐私。
跨域的解决
- cors:通过后端的方式解决,缺点是容易造成任何人都可以找服务器要数据。
- jsonp:需要通过前后端配置一起解决,很巧妙借助 script src 在引入外部资源的时
候不受同源策略限制的特点来实现,缺点是只能解决 GET 请求。
- 代理服务器:通过服务器和服务器之间直接可以进行 http 请求来解决