本节书摘来自异步社区《JavaScript设计模式》一书中的第11章,第11.1节,作者:张容铭著,更多章节内容可以访问云栖社区“异步社区”公众号查看
第11章 牛郎织女——代理模式
代理模式(Proxy):由于一个对象不能直接引用另一个对象,所以需要通过代理对象在这两个对象之间起到中介的作用。
由于用户相册模块上传的照片量越来越大,导致服务器端需要将图片上传模块重新部署到另外一个域(可理解为另一台服务器)中,这样对于前端来说,用户上传图片的请求路径发生变化,指向其他服务器,这就导致跨域问题。
11.1 无法获取图片上传模块数据
“小铭,你帮我看看,为什么我向咱们图片上传模块所在的服务器发送的请求,得不到数据呢?”小白问小铭。
// 当前域www.xx.com
$.ajax({
url : 'http://upload.xx.com/upload.php',
success : function(res){
// 无法获取返回的数据
}
});
“打开你的控制台,你发现没有,已经报错了,出现跨域问题了。”
// 浏览器控制台报错:XMLHttpRequest cannot load http://upload.xx.com/upload.php. No 'Access-Control-Allow-Origin' header is present on the requested resource.