跨域的场景,以及常见的解决方案
2018-06-12 本文已影响118人
Tenloy
跨域的场景:
-
域名不同
www.wuyou.com 和www.wulv.com 即为不同的域名
-
二级域名相同,子域名不同
www.wuyou.wu.com 和www.wulv.wu.com 为子域不同
-
协议不同
http://www.wuyou.com 和https://www.wuyou.com属于跨域
-
端口不同
www.wuyou.con:8888和www.wuyou.con:8080
常见的解决方案
- 跨域是浏览器限制的,只有ajax才有,html等标签加载跨域资源,是没有限制的
- 我们在开发结束后,我们的网页是放在服务器上,访问本公司的服务器的内容是不会有跨域情况的
- 但是,我们在开发过程中,网页在前端开发人员电脑上,连接的是后台工作人员的电脑,可能会出现跨域的情况,常见的解决方案:
1. JSONP :
- 但是因为我们上线之后,就不存在跨域情况了,所以,有些浪费时间
- AngularJS中,都没有JSONP
2. 自己配Apache服务器,做代理,中转(有些麻烦)
3. 跨域插件:chorme有一个跨域的插件,跨域让网页跨域访问
ifream解决跨域 - 嵌套界面
jsonp解决跨域 - 请求数据
跨域插件:Allow-Control-Allow-Origin (需要翻墙~)
其实,在工作中,上线以后的跨域其实是很少见的,上线之后的跨域还有一种实现方案,就是让该域名内的服务器去请求目标服务器的资源,然后返回前端界面