谈到跨域,首先就得先说到同源策略。那么,到底什么是同源策略呢?

  所谓“同源”,是指 协议、域名、端口三者都一致,同源策略会限制以下几种情况:

    1)、Cookie、LocalStorage的值无法获取;

    2)、DOM、JS 对象无法获得;

    3)、Ajax请求不能发送。

 

  那么,我们解决跨域问题的方案又有哪些呢?

  1、通过 jsonp 解决跨域:

    需要后台设置对应的 callback 回调函数;只支持 Get 请求

  2. 通过跨域资源共享(CORS)解决跨域:

    普通的跨域请求只需要服务端设置 Access-Control-Allow-Origin 即可,前端无需处理。若请求中携带 Cookie 信息,则要求前后端都做处理

  3. 使用 nginx 代理解决跨域:

  4. 使用 WebSocket 协议解决跨域:

 

参考文章: 前端常见跨域解决方案(全)_个人文章 - SegmentFault 思否

 

posted on 2020-11-22 17:06  取名向来是件难事  阅读(163)  评论(0)    收藏  举报