1、什么是跨域前端
1.域名地址组成:jquery
http:// www . google : 8080 / script/jquery.jsajax
- http:// (协议号)
- www (子域名)
- google (主域名)
- 8080 (端口号)
- script/jquery.js (请求的地址)
2.当协议、子域名、主域名、端口号中任意一各不相同时,都算不一样的“域”。不一样的域之间相互请求资源,就叫“跨域”。跨域
2、出现跨域问题的状况服务器
会出现问题的几种状况
序号 url 说明 是否容许通讯 1 http://www.a.com/a.jsgoogle
http://www.a.com/b.jsurl
同一域名下 容许 2 http://www.a.com/a/a.jsspa
http://www.a.com/b/b.js代理
同一域名不一样文件夹 容许 3 http://www.a.com: 8080 / a.jscode
http://www.a.com: 9090 / a.js
同一域名不一样端口号 不容许 4 http://www.a.com/a.js
https://www.a.com/b.js
同一域名不一样协议 不容许 5 http://www.a.com/a.js
http://192.168.4.158/b.js
域名与域名对应的ip地址 不容许 6 http://www.a.com/a.js
http://wwww.a.com/b.js
主域名相同,子域名不一样 不容许 7 http://www.a.com/a.js
http://www.b.com/b.js
不一样域名 不容许 3、处理跨域的方法
- JSONP
- XHR2
只须要在服务器端头部加上下面两句代码:
header( "Access-Control-Allow-Origin:*" ); header( "Access-Control-Allow-Methods:POST,GET" );
- 代理
前端ajax请求的是本地接口 本地接口接收到请求后向实际的接口请求数据,而后再将信息返回给前端