代理模式(Proxy):由于一个对象不能直接引用另一个对象,所以需要通过代理对象在这两个对象之间起到中介的作用。
跨域问题:域名相同端口不同,域名相同协议不同,域名和域名对应的ip,主域和子域,子域和子域都存在同源策略的限制。
将不同源的两个域抽象为两个对象,想要实现通信,就需要找个代理对象来实现通信。
1.简单的使用img之类通过src属性可以向其他域下的服务器发送请求,不过是get请求,而且是单向的,它不会有响应数据。
2.第二种代理对象形式是通过script标签,在src指向的url上面添加一些字段信息,然后服务器端获取这些字段,再响应生成一份内容。
3.与JSONP类似的一种代理模板的解决思路:不同域之间相互调用对方页面是有限制的,那么自己域中的两个页面相互之间的调用是可以的,即代理页面B调用被代理的页面A中的对象的方式是可以的,那么要实现这种方式只需要在被访问的域中,请求返回的Header重定向到代理页面,并在代理页面处理被代理的页面A就可以了