同源策略与跨域解决方案

【网络安全 | 浏览器安全机制】同源策略(Same origin policy)及跨域请求 同源策略(Same-origin policy)是一个浏览器安全机制,用于限制不同源之间的跨域操作。它是一种控制浏览器如何处理来自不同源的资源(例如文档、脚本、样式表和AJAX请求)的规则。在同源策略中,如果两个URL具有相同的协议(protocol),主机(host)和端口号(port),则它们被视为同源(origin)。当一个浏览器的两个tab页中分别打开来自百度和谷歌的页面,浏览器的百度tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的,即检查是否同源,只有和百度同源的脚本才会被执行。 阅读详情

本文将介绍两种重要的ajax跨域解决方案(jsonp、CORS),在网上看了这么多有关同源策略的介绍,感觉都说得不是很清楚,都只是提到了一部分,站在巨人的肩膀上我简单总结所谓的 “同源策略”

同源策略: 就是为了保证数据安全的一个实现方法,不允许跨域访问数。

       本质:在发起http请求的时候浏览器并没有做任何的同源策略限制(只是跨域请求头部不会带当前cookie),也就是它能向任何域发起http请求,浏览器是在后台返回数据的时候做的同源策略限制,它会先判断请求的域和当前域是否是同一个域一下。如果不是同一域名、协议、端口就存在跨域问题。有同源策略的限制。而在script、img、iframe中浏览器没有对其做限制。

1、JSONP 


script实现跨域,src 后面跟url地址,如 src=“http://localhost:8080/FirstTest/index.html?callBack=log”,服务器返回的是log(argument)方法(js文本),并立即调用执行;相当于加载了一个js文件,而文件里面就是调用log方法,参数就是argument。

写法很简单再次就不做详细介绍,可参照 http://wwwcomy.iteye.com/blog/1814181

                                                                http://kb.cnblogs.com/page/139725/

2、CORS(Cross-Origin Resource Sharing)

可以通过设置 response.setHeader("Access-Control-Allow-Origin", "http://localhost:8090"); 来控制信任的源,  第二个参数表示可访问的源,在这个域下都可以请求访问数据,不受浏览器同源策略的影响。' * ' 表示所有域都为可信任,都可以访问(很少这样使用)。

8080端口访问8090端口并返回数据


request url表示请求的地址 8090端口,request headers Origin 表示request的域、源,response hearders 中的access control allow origin 表示可信任的源。当request url与request headers Origin 中的域不一样时就存在跨域访问,之所以再此不存在跨域问题是因为response hearders 中我添加了可访问源为8080端口,

response.setHeader("Access-Control-Allow-Origin", "http://localhost:8080"); 


当然还是其它一些跨域方式, jquery中的ajax以及$.getScript,   $.getJSON 都支持跨域,参考http://www.cnblogs.com/2050/p/3191744.html

Vscode远程免密连接Linux虚拟机,并配置C/C++运行环境 目前想要深入学习在Linux,也为了方便编写C/C++程序。Linux的环境里一般自带有c++的编译环境,如果没有安装gcc和g++等编译器也比较便利。但是在虚拟机里用vim编写C++程序又不得劲,因此打算使用vscode远程连接Linux虚拟机进行学习。为了防止自己以后还要再配置,重复踩坑,因此写下这篇博客用做记录。环境:windows11、VMware17、rocky linux9.1 ( 开源的CentOS9 ) 阅读详情

相关推荐

CTFHUB------XSS反射型(WP)

文章目录前言XSS测试平台 前言 一开始我直接在上面写js脚本发现出错,最后发现只能通过下面的输入框来执行XSS测试,于是我们只能用XSS测试平台解决问题 XSS测试平台 注册一个XSS测试平台 这里随便填写 勾选默认模块就够了,点击下一步 这时会出现一个找个将代码复制 拼接到网站后缀name后面,点击send 这时平台会收到一个记录点开即可 得到flag ...

Y4tacker的博客 1万+

同源策略(same origin policy)

同源策略是一个重要的安全策略,它用于限制一个origin的文档或它加载的脚本如何能与另一个源的资源进行交互。能够减少恶意文档,减少可能被攻击媒介。 如果两个URL的协议、域名、端口号都相同,就称这两个URL同源。浏览器默认两个不同的源之间是可以互相访问资源和操作DOM的。两个不同的源之间若是想要访问资源或者操作DOM,那么会有一套基础的安全策略的制约,我们把这称为同源策略。它的存在可以保护用户隐私信息,防止身份伪造。Web内容的源用于访问它的URL的协议(方案)、主机(域名)、和端口号。只有当协议、主机、域

csdssdn的博客 1万+

给麒麟KylinOS服务器加把锁:手把手配置符合等保要求的密码强度策略

本文详细介绍了如何在麒麟KylinOS服务器上配置符合等保要求的密码强度策略,包括pwquality.conf和login.defs的核心参数设置、等保合规的进阶配置技巧以及企业环境中的平衡艺术。通过实战案例和测试方法,帮助管理员构建坚固的密码防线,确保系统安全。

weixin_33749242的博客 419

同源策略是什么?作用是什么,三要素,跨域解决方法

同源策略是Web安全的一个基本概念,它由浏览器实施,用来限制一个源(origin)的文档或脚本如何与另一个源的资源进行交互。它是一个关键的安全措施,用于隔离潜在恶意文件,防止恶意网站窃取数据。

白帽黑客佳哥的博客 7579

ncl泰勒图(均方根误差、标准差、相关系数)

ncl泰勒图(均方根误差、标准差、相关系数)

weixin_61281699的博客 8008

Stata新手避坑:用reghdfe搞定行业、地区多重固定效应,告别‘共线性’报错

本文详细介绍了如何使用Stata中的reghdfe命令高效处理多重固定效应问题,解决传统方法在面板回归中遇到的共线性报错和低R²问题。通过实战案例和高级技巧,帮助新手快速掌握行业、地区等多维固定效应的控制方法,提升经济学和金融学研究的分析效率。

weixin_30635053的博客 422

什么是同源策略?

概述:先来看看 域名地址组成:什么是同源策略及其限制内容?同源策略是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSRF等攻击。同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。同源策略限制内容有:但是有三个标签是允许跨域加载资源:跨域并不是请求发不出去,请求能发出去,服务端能收到请求并正常返回结果,只是结果被浏览器拦截了。跨域解决方案解决方案有jsonp、cors、postMessage、websocket、Node中间件代

weixin_70437515的博客 9970

PCL ——LevenbergMarquardt非线性最小二乘法拟合圆柱(C++详细过程版)

使用C++详细过程版实现的LevenbergMarquardt非线性最小二乘法拟合圆柱

点云侠的博客 607

同源策略(Same-Origin Policy)

同源策略是Web浏览器的一种安全机制,用于限制来自不同源的文档或脚本如何与另一个源的资源进行交互。这种策略有助于防止恶意网站读取另一个网站的敏感数据,例如用户的登录凭据或私人信息。通过确保只有来自相同源的脚本才能访问和操作DOM、发送AJAX请求或读取Cookie等,同源策略为Web应用程序提供了基本的安全保障。Web内容的源由用于访问它的URL的方案(协议)、主机名(域名)和端口定义。即源由协议、域名和端口组成。在页面中通过 about:blank 或 javascript:;

qq_74114417的博客 3857

Open3D (C++) 泊松重建【2025最新版】

使用C++版本的Open3D实现点云的泊松重建

点云侠的博客 3077

【C++】开源:ncurses终端TUI文本界面库

ncurses配置使用(TUI)

DevFrank的博客 3169

同源策略和跨域解决方案:必知必会

同源策略(Same - Origin Policy)是浏览器的一种安全机制。它规定,只有当两个页面的协议(如http、https)、域名(如example.com)和端口(如80、443)完全相同(即同源)时,一个页面中的脚本才能访问另一个页面的资源。例如,一个在页面中的JavaScript脚本,正常情况下不能访问或者中的资源。

你若盛开,清风自来 1343

2026年佰维存储数字IC笔试试卷带答案

建立时间是有效时钟沿到来前,输入数据必须稳定保持的最短时间。保持时间是有效时钟沿到来后,输入数据必须继续稳定保持的最短时间。

Open 103

同源策略与跨域解决方案详解

同源策略虽然给开发者带来了诸多挑战,但通过上述几种方法,我们可以有效地解决跨域问题。随着技术的发展,未来还会有更多新的解决方案出现。理解这些机制的工作原理,有助于我们在开发过程中更好地利用它们,构建安全可靠的 Web 应用。原文链接:https://juejin.cn/post/7409148560778362931。

weixin_47588164的博客 1267

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

同源策略和跨域解决方案

同源策略是一种浏览器的安全策略,它限制了从一个源加载的文档或脚本如何与来自另一个源的资源进行交互。同源是指协议、域名和端口号都相同。

q880717的博客 423

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

浏览器的同源策略及跨域解决方案

什么是浏览器同源策略 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说 Web 是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。 它的核心就在于它认为自任何站点装载的信赖内容是不安全的。当被浏览器半信半疑的脚本运行在沙箱时,它们应该只被允许访问来自同一站点的资源,...

城北荆无命的博客 2974

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

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

一、同源策略 浏览器的同源策略是一种约定,最核心也最基本的安全功能,它限制了来自不同源的 “document” 或脚本,对当前 “document” 读取或设置某些属性。 这个策略是非常重要的,试想下如果没有该策略。那么 a.com 的一段 JavaScript 脚本,可以在 b.com 未导入该脚本的情况下,对 b.com 的页面 进行随意更改,那就很恐怖了。为了防止页面之间发生混乱,浏览器...

周大侠的博客 2078

谈谈跨域、同源策略、以及常见跨域解决方案

谈谈跨域、同源策略、以及常见跨域解决方案 跨域:是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对js实施的安全限制。 同源策略 同源策略是一个安全策略。所谓的同源,指的是协议,域名、端口号相同。 限制了一下行为: Cookie、LocalStorage 和 IndexDB 无法读取 DOM 和 JS 对象无法获取 Ajax请求发送不出去 解决方案 : 当然了,我梳理了几个我觉得工作中常用的,其他的自行去了解。 jsonp跨域 利用script标签没有跨域限制的漏洞,网

weixin_45030716的博客 368

浏览器同源策略与跨域解决方案

浏览器同源策略(SOP)是核心安全机制,限制不同源之间的资源交互。跨域解决方案包括:1) CORS通过HTTP头实现标准化跨域访问;2) JSONP利用script标签但仅支持GET请求;3) 代理服务器转发请求;4) WebSocket和postMessage实现特殊场景通信。开发中需注意安全风险,如CORS配置不当、CSRF攻击等。现代应用应优先使用CORS,结合安全策略保障跨域访问安全。本文系统介绍了跨域技术原理与实现方案,帮助开发者构建安全的跨域应用。

qq_46082433的博客 222

深入解析同源策略与跨域解决方案:从原理到实践

当浏览器出于安全考虑限制不同源之间的资源交互时,开发者需要掌握多种方案来绕过这些限制。本文将系统性地解析同源策略的核心机制,并提供几种跨域解决方案的实现细节与最佳实践。跨域问题的本质是浏览器为保护用户安全而设计的限制,开发者需根据实际场景选择合适方案。理解这些技术的原理与实现细节,将帮助开发者构建更安全、高效的跨域应用。:通过后端设置HTTP响应头,显式允许指定源的请求。标签不受同源策略限制的特性,通过回调函数获取数据。:通过同源的后端服务转发请求,绕过浏览器限制。预检请求,并返回允许的方法和头信息。

qq_50708187的博客 1327

同源策略、跨域解决方案

一、同源策略 1、先来说说什么是源 源(origin,起源)就是协议、域名和端口号。如某url中的源就是:http://www.company.com:80。若地址里面的协议、域名和端口号均相同则属于同源。 以下是相对于http://www.a.com/test/index.html的同源检测 • http://www.a.com/dir/page.html----成功 • http://www.child.a.com/test/index.html----失败,域名不同 • https:...

顺其自然~专栏 1064

浏览器同源策略详解、主流的跨域解决方案、深入理解跨域请求概念及其根因

跨域问题其实就是浏览器的同源策略造成的。同源策略限制了从同一个源加载的文档或脚本如何与另一个源的资源进行交互。这是浏览器的一个用于隔离潜在恶意文件的重要的安全机制。协议端口号域名必须一致。下表给出了与 URLURL是否跨域原因同源完全相同同源只有路径不同跨域协议不同跨域端口不同 ( http:// 默认端口是80)跨域主机不同同源策略:protocol(协议)、domain(域名)、port(端口)三者必须一致。

liangzhenmeng的博客 6万+

关于同源策略及跨域的解决方案

关于同源策略及跨域的解决方案 同源策略 同源策略:协议、域名、端口号全相同 URL1 URL2 是否跨域/原因 http://www.baidu.com/a.js http://www.baidu.com/b.js 否 / 协议,域名,端口号都相同 http????/www.baidu.com/a.js https????/www.baidu.com/b.js 是 / 协议不同 http://www.baidu.com/a.js http://www.taobao.com/b.j

HiLiou的博客 414

3、同源策略、跨域解决方案

选自: 同源策略和跨域的解决方案 前端常见跨域解决方案(全) 什么是跨域 & 跨域的3种解决方案 文章目录同源策略1. 什么是同源?2. 为什么制定同源策略?3. 同源策略有什么影响,哪些需要跨域操作?4. 跨域有风险吗?跨域的解决方案1. 降域 document.domain2. JSONPJSONP的简单实现过程:jsonp跨域存在的问题:3、CORS跨域资源共享(重点掌握)客户端需要做什么?两种请求简单请求非简单请求CORS怎么设置 同源策略 1. 什么是同源? 所谓同源是指:协议、域名、端口

abuanden的博客 278
上一篇: 浏览器缓存cookie与服务器缓存
下一篇: 浏览器滑块、鼠标事件、鼠标滑轮、键盘事件详细说明
trifling_
博客等级 码龄12年 32粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值