跨域原理及解决

解决跨域原理:

首先我们需要理解几点

1jsonp发送的并不是一个ajax请求,是一个script标签

 

2script标签没有同源策略限制,支持跨域请求

 

3此时我们将这个script的src指向真实的服务器地址并且携带一个callback=a这样一个参数,后台解析并且返回a这个方法里面包裹着我们需要的数据

 

4在发送请求前,前台windows中注册a这个方法,之后在a这个方法可以拿到数据

解决方案

1使用第三方库:jsonp    见jsonp的使用:https://blog.csdn.net/github_39274378/article/details/81671313

2 postMessage解决跨域

主要代码

father.html




    
    Title


this is index.html 父页面




child.html




    
    Title


this is index.html 子页面



完整demo:https://github.com/nhclike/iframe-cross-domain

你可能感兴趣的:(跨域)