web前端跨域问题

先问大家一个问题,什么是跨域?

跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这是广义的。

而我们通常说的跨域是狭义的,是由浏览器同源策略限制的一类请求场景
所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。

同源策略限制会造成什么影响呢?

1.cookie LocalStorage和IndexDB无法读取
2.DOM 和 Js对象无法获得
3.AJAX 请求不能发送

解决跨域问题的方法有:
1、 通过jsonp跨域(缺点:只能实现get一种请求)
2、 document.domain + iframe跨域
3、 location.hash + iframe
4、 window.name + iframe跨域
5、 postMessage跨域
6、 跨域资源共享(CORS)
7、 nginx代理跨域
8、 nodejs中间件代理跨域
9、 WebSocket协议跨域

方法的具体实现请参考:
https://www.jianshu.com/p/842f462582a7

你可能感兴趣的:(web前端跨域问题)