同源策略:ajax请求时,浏览器要求当前网页和server必须同源(安全)
同源的意思是:协议,域名,端口 三者必须保持一致
前端:http://a.com:8082/
server: https://b.com/api/xxxx
(默认的端口号就是8080
)
http
:协议 ; a.com
:域名; 8082
:端口号
加载图片,css ,js 可无视同源策略的要求
1.png跨域:所有的跨越都必须经过server端允许和配合。未经过server端允许就实现的跨域说明浏览器有漏洞。
解决跨域
(1) jsonp 解决跨域的原理:当我们访问一个url
地址的时候,服务器并不是只能够返回 HTML
文件,它可以返回任意的动态拼接数据,只要数据格式符合 HTML
格式要求。同样的,<script src="https://www.qunar.com/hotel/mustTry"></script>
,也不一定 返回一个js
文件,可以是任意的符合js
格式的数据。
所以,</script>
可以绕过跨域限制,(</script>
返回的地址是跨域的地址,服务器可以任意拼接数据),</script>
就可以获得跨域的数据,只要服务器愿意返回。
(2)通过 CORS
服务器设置 http header
网友评论