前端面试题之跨域方式

前端面试题之跨域方式

常用的:

  1. jsonP:通过script标签调用不同域的js把参数带回来
  2. CORS:通过服务端在响应头设置Access-Control-AllowOrigin字段进行跨域

还有:

  1. window.name:一个页面跳转之后,它的window.name是不会变的,通过这个原理,一个页面跳转到不同域的页面也可以拿到不通域页面的值
  2. document.domain:document.domain将页面设置成相同的域来进行跨域

H5新出的:

  1. window.postMessage:拿到iframe中网页的window对象然后设置window.postMessage的值之后在另一个网页可以拿到window.postMessage的值
  2. websocket:WebSocket是在HTML5中引入的浏览器与服务端的通信协议,可以类比HTTP,默认支持同源通信

面试回答:跨域是因为浏览器基于安全问题,使用了同源策略,也就是浏览器只允许请求协议,域名,端口相同的域的数据,跨域就是让浏览器能够请求不同源的域的数据

猜你喜欢

转载自blog.csdn.net/qq593249106/article/details/83216557