chengbenchao.top //主域名
www.chengbenchao.top;
aaa.chengbenchao.top
bbb.chengbenchao.top
//www,aaa 子域名
https://www.chengbenchao.top:8080/a.txt
//https,http协议
//协议,子域名,主域名,端口号,请求的资源文件
当协议,子域名,主域名,端口号有任意个不同的时候,就算跨域
- 不同域之间请求资源就算做跨域。
- Javascript出于安全性的考虑,不允许跨域调用其他页面的对象。简单理解就是因为Javascript同源策略的限制,a.com域名下的js无法操作b.com域名下的对象。
解决跨域方法
jsonp
<script>
$.ajax({
url:"http://192.168.4.18:7000/ad",
method:"get",
dataType:"jsonp",//dataType改为jsonp即可解决
success:res=>{
console.log(res)
}
})
</script>
服务器的解决方案
js中script标签不受同源策略的影响也可以实现跨越
var script = document.createElement("script");
script.src = "http://api.douban.com/v2/movie/subject/1764796?&callback=handleResponse";
document.body.prepend(script);
function handleResponse(res) {
// 对response数据进行操作代码
console.log(res)
}