什么是跨域?如何解决跨域问题?

什么是跨域?
引出同源策略
同源策略限制内容

  • Cookie、LocalStorage等存储性内容
  • DOM 节点
  • AJAX 请求不能发送
如何解决跨域问题?
  • 使用JSONP:前端技术使用 jQuery的ajax解决方案,服务端使用JSON.toJSONString 。
  • 使用CORS:在响应头上添加Access-Control-Allow-Origin属性,指定同源策略的地址 。同源策略默认地址是网页的本身 。只要浏览器检测到响应头带上了CORS , 并且允许的源包括了本网站 , 那么就不会拦截对应的请求响应 。(对比jsonp,优点在于功能更加强大支持各种HTTP Method,缺点是兼容性不如JSONP)
  • 前端:支持原生ajax、jQuery ajax、vue、axios 服务端:支持Java、Nodejs、Python、PHP等
  • 指定的页面设置document.domain属性:指定的页面就可以共享Cookie 。
  • Nginx反向代理:配置nginx(修改nginx目录下的nginx.conf),在这个服务器上配置多个前缀来转发http/https请求到多个真实的服务器即可 。这样,这个服务器上所有url都是相同的域名、协议和端口 。这样对于浏览器来说,这些url都是同源的,就不会有跨域限制了 。
  • 【什么是跨域?如何解决跨域问题?】以上就是朝夕生活(www.30zx.com)关于“什么是跨域?如何解决跨域问题?”的详细内容,希望对大家有所帮助!

    猜你喜欢