• Web跨域学习笔记


    1.什么是跨域

      ①跨域是指跨域名的访问,以下情况都属于跨域:

    跨域原因说明 示例
    协议不同 http://与https://
    域名不同 www.yunyi.com 与 blog.yunyi.com
    端口不同 www.yunyi.com:8080www.yunyi.com:8081

      ②跨域问题是因为浏览器的同源策略(对于ajax请求的一种安全限制):一个页面发起的ajax请求,只能是当前页同域名的路径,这能有效的阻止跨站攻击。

    因此:跨域问题 是针对ajax的一种限制。
      链接:https://www.jianshu.com/p/98d4bc7565b2

    2.跨域的几种解决方案

      ①Jsonp:

        最早的解决方案,利用script标签可以跨域的原理实现。需要服务的支持且只能发起GET请求不安全。

      ②CORS(Cross-origin resource sharing):

        W3C标准化规范化的跨域请求解决方案,安全可靠。需要服务器支持且如果是IE浏览器则不能低于IE10。

        它允许浏览器向跨源服务器发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。实现CORS通信的关键是服务器。只要服务器实现了CORS接口,就可以跨源通信。浏览器将CORS请求分成两类:简单请求(simple request)和非简单请求(not-so-simple request)。CORS中浏览器对这两种请求的处理,是不一样的。

        文档:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CORS

      ③proxy(如:Nginx):

        通过代理服务器转发请求,实现跨域,支持各种请求方式

    参考文档:https://www.jianshu.com/p/98d4bc7565b2

    https://www.cnblogs.com/heioray/p/9403246.html

    https://www.cnblogs.com/fanfan-90/p/13305133.html

    https://zhuanlan.zhihu.com/p/163644601

    https://segmentfault.com/a/1190000019438261

    https://blog.mimvp.com/article/40031.html

  • 相关阅读:
    java中VO、PO、DTO 、DO、POJO、BO、TO
    java可变参数
    排序
    快速排序
    单元测试概述
    Spring 对事务管理的支持
    Spring的事务管理基础知识
    混合切面类型
    基于Schema配置切面
    Spring AOP @AspectJ进阶
  • 原文地址:https://www.cnblogs.com/qq2806933146xiaobai/p/15844566.html
Copyright © 2020-2023  润新知