1、为什么会出现跨域问题?
答:浏览器的同源策略限制,浏览器会拒绝跨域请求。a链接跳转
2、什么才叫做跨域?
非同源请求,均为跨域。同源指的是相同的主机、端口、协议。
3、跨域的解决方法
a、JSONP 实现需要前后端配合
优点:兼容好,兼容ie低版本;
缺点:只支持GET请求,XMLHttpRequest相对于JSONP有更好的错误处理机制
b、CORS W3C推荐的一种新方案,能使服务器支持XMLHttpRequest跨域请求。
异步请求分为简单请求和非简单请求
简单请求:
仅当POST方法的Content-Type值等于下列之一才算作简单请求
- text/plain
- multipart/form-data
- application/x-www-form-urlencoded
非简单的请求
1/使用了下面任一 HTTP 方法:
- PUT
- DELETE
- CONNECT
- OPTIONS
- TRACE
- PATCH
用来向其他window对象发送信息
otherWindow.postMessage(message, targetOrigin, [transfer]);
参考:juejin.cn/post/684490…