同源策略


1.1.1 所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个 ip 地址,也非同源。同源策略/SOP(Same origin policy)是一种约定,由 Netscape 公司 1995 年引入浏览器,它是浏览器最核心也最基本的安全功能,现在所有支持 JavaScript 的浏览器都会使用这个策略。如果缺少了同源策略,浏览器很容易受到 XSS、 CSFR 等攻击。
{1} 比如一个web应用,用户访问的页面,处理页面的请求的controller都是在同一个contextPath下的,无论在页面上请求AController还是BController,页面、A、B都是同源的,所处的空间位于同一个contextPath下。
{2} 同源策略是为了安全,确保一个应用中的资源只能被本应用的资源访问。否则,岂不是谁都能访问。
1.1.2 什么是源?
{1} 源(origin)就是协议、域名和端口号。
[1] 若地址里面的协议、域名和端口号均相同则属于同源。
{2} 以下是相对于 http://www.a.com/test/index.html 的同源检测
[1] http://www.a.com/dir/page.html ----成功,port默认是80
[2] http://www.child.a.com/test/index.html ----失败,域名不同
[3] https://www.a.com/test/index.html ----失败,协议不同
[4] http://www.a.com:8080/test/index.html ----失败,端口号不同
[5] http://www.domain.com/a.js http://192.168.4.12/b.js 虽然域名指向的ip和ip相同,也不是同源,因为域名不同。
解决跨域的三种方式
方法1

后台开放限制,优点:方便;缺点:不安全

方法2

JSONP利用script标签的src的属性不受同源策略限制(需要后台配合)

方法3

配置代理

二.Vue的自动跳转运行及代理方法?

devServer :{

// 自动打开

open:true,

// 热更新

hot:true,

//  port:8089

二.代理方法

proxy:{

//代理名称

'/course-api':{

// 代理地址

target:" "

// 路径重写(代理重写)

pathRewrite:{

'/course-api':' '

}

}

}

什么是同源策略及解决跨域的三种方式相关推荐

  1. 什么是同源策略?解决跨域的三种方法?

    1.同源策略 同源策略是一种约定和规范好的安全策略,是浏览器最核心最基本的安全保障.同源政策的目的,是为了保证用户信息的安全,防止恶意的网站窃取数据. 满足的条件: (1)协议要相同:HTTP.HTT ...

  2. 前端实现跨域的三种方式

    前端解决跨域的三种方式: 1.cors跨域(只需要后端配置) header("Access-Control-Allow-Origin:*"); // 允许任何来源 header(& ...

  3. SpringBoot解决跨域的5种方式

    本文来说下SpringBoot中实现跨域的5种方式. 文章目录 什么是跨域 java解决CORS跨域请求的方式 返回新的CorsFilter(全局跨域) 重写WebMvcConfigurer(全局跨域 ...

  4. $.ajax 加了headers报错_Springboot解决Ajax跨域的三种方式

    这篇文章不华丽,但比较实用,能解决不少大家实际业务中的问题.大家可以收藏起来,以备用时之需! 1.同源策略 1.1 含义 ajax出现请求跨域错误问题,主要原因就是因为浏览器的"同源策略&q ...

  5. springboot项目解决跨域的几种方式

    跨域资源共享(CORS):通过修改Http协议header的方式,实现跨域.说的简单点就是,通过设置HTTP的响应头信息,告知浏览器哪些情况在不符合同源策略的条件下也可以跨域访问,浏览器通过解析Htt ...

  6. 浏览器同源策略,及跨域解决方案

    原文链接:浏览器同源策略,及跨域解决方案 一.Origin(源) 源由下面三个部分组成: 域名 端口 协议 两个 URL ,只有这三个都相同的情况下,才可以称为同源. 下来就以 "www.e ...

  7. 前端交互之“解决前端跨域的三种方法”

    1.什么是前端跨域? 跨域是浏览器为了安全而做出的限制策略:浏览器请求必须遵从同源测试: http://www.bilibili.com:8080:/anime/?key=calue路径 键值对 同协 ...

  8. vue开发环境和生产环境里面解决跨域的几种方法

    vue开发环境和生产环境里面解决跨域的几种方法 参考文章: (1)vue开发环境和生产环境里面解决跨域的几种方法 (2)https://www.cnblogs.com/pass245939319/p/ ...

  9. Springboot 解决跨域的四种姿势

    Springboot 解决跨域的四种姿势 姿势一 实现WebMvcConfigurer#addCorsMappings的方法 import org.springframework.context.an ...

最新文章

  1. java ajax jquery分页插件_JQueryPagination分页插件,ajax从struts请求数据
  2. 打开WORD2016提示 您正在试图打开带有宏的 。。。。 解决办法
  3. mac升级之后safari打不开网页,怎么办?
  4. java int与integer的区别
  5. springboot整合shiro+mybatis-plus
  6. rlwrap插件,实现sqlplus上下翻页
  7. Android SubsamplingScaleImageView(subsampling-scale-image-view)单双击长按事件【系列2】
  8. 03-03 APP 控件定位
  9. MFC的非模态对话框资源管理
  10. html文字阴影兼容ie,IE之css3效果兼容
  11. PHP 8 中确认支持 JIT!
  12. 拆解一探电路设计:小米路由器3C拆解
  13. 网红漏洞“致远OA系统上的GetShell漏洞”详解
  14. E3来了,今年有哪些令人期待的游戏新作?
  15. deb软件包管理(二)
  16. 使用python批量下载ensembl数据库指定类型的文件
  17. 每日必读DZone Spring:Spring @Transactional 是如何真正工作的?
  18. 通过浏览器无法访问Hadoop管理页面
  19. prach频域位置_[转载]zz LTE PRACH时频资源及选择
  20. 【Java并发编程(一)】并发设计原理

热门文章

  1. session+application实现聊天室
  2. python 正则化表达式和泛型函数的使用及异常
  3. matlab 两列排序,在Matlab中对列进行排序
  4. Python xlrd将excel表的指定数据copy到另一个excel表格中
  5. php 公众号token认证,微信公众号开发——Token认证
  6. 我的世界服务器修改名称颜色,我的世界怎么给别人改名字颜色 | 手游网游页游攻略大全...
  7. 如何用AI画出可爱的漫画少女插图?
  8. Panda 常见的坑
  9. 联发科变山寨王幕后人物:徐至强让联想手机成大陆第一
  10. 走进几米童话世界,《我的全世界只有你》推出VR版本