当前位置: 首页 > news >正文

深度贴:前端网络基础及进阶(3)

浏览器的同源是什么?

异源请求一定会产生跨域问题吗?

跨域问题本质是因为浏览器同源策略产生的开发问题。在客户端发送请求后,客户端的响应传入浏览器时浏览器校验不通过,就产生了跨域问题。

浏览器同源及跨域问题

同源策略是一套浏览器「安全机制」,当一个源的文档和脚本,与另一个源的资源进行通信时,同源策略就会对这个通信做出不同程度的限制。简单来说,同源策略对同源资源放行,对异源资源限制。

因此限制造成的开发问题,称之为跨域(异源)问题。

一、.源与同源策略

源和同源:源(origin)由协议(schema)、域名domian、端口号port组成。只要协议、域名、端口号都相同的就是同源。

同源请求:同源指的是页面源和目标源两者之间。页面源和目标源不一致的时候就是跨域请求;一致即为同源请求。

浏览器同源策略 

  • 对标签发出的跨域请求轻微限制
  • 对AJAX发出的跨域请求严厉限制

二.跨域问题的解决方案

1.CORS(Cross-Origin Resource Sharing)解决方案

CORS是浏览器校验跨域请求的规则。只要服务器明确表示允许,则校验通过,不会产生跨域问题;若服务器明确拒绝或没有表示,则校验不通过,产生跨域问题。

CORS方案将请求分为简单请求和预检请求:

  1. 简单请求
  2. 预检请求,除了简单请求以外的请求。

CORS请求流程

2.JSONP解决方案

将请求封装成标签。

3.代理服务器解决方案

在网页源和目前源之间添加一个中间服务器。

http://www.dtcms.com/a/327160.html

相关文章:

  • Linux 常用命令大全:覆盖日常 99% 操作需求
  • 【SpringBoot】05 容器功能 - SpringBoot底层注解的应用与实战 - @Configuration + @Bean
  • WebAssembly的原理与使用
  • Day24|学习前端CSS
  • 虚拟机高级玩法-网页也能运行虚拟机——WebAssembly
  • GitHub的简单使用方法----(4)
  • Seata深度剖析:微服务分布式事务解决方案
  • 如何应对CAN总线冲突和数据丢包
  • GitHub Browser-Use 的部署失败记录:失败了,失败了。。。。
  • 在 Windows 上升级 Python 到 3.8 的步骤
  • 【微服务过度拆分的问题】
  • IEEE 2025 | 重磅开源!SLAM框架用“法向量+LRU缓存”,将三维重建效率飙升72%!
  • 学习嵌入式的第十七天——Linux编程——shell编程
  • 【图像算法 - 13】基于 YOLO12 与 OpenCV 的实时目标点击跟踪系统(系统介绍 + 源码详细)
  • centos 怎么部署 vscode 网页版
  • 如何提升需求分析能力
  • 数据分析—双十一
  • Linux磁盘空间逻辑卷扩容
  • 服务器service托管java服务
  • 【无标题】centos 配置阿里云的yum源
  • 如何区分类的关系是关联和聚合?
  • 【数据结构】二叉树经典OJ题与OJ题解析
  • 【传奇开心果系列】Flet框架实现的多人访问web数据表高并发前后端自定义框架模板
  • iPhone 17 Pro 为何被指像充电宝?
  • 【2025最新版】视频转换软件VideoProc Converter Al 便携版 功能强大的视频转换工具 百度网盘
  • iPad 引导式访问(Guided Access)完整指南
  • 26 届秋招建议指南
  • Web 安全之互联网暴露面管理
  • python调研本地 DeepSeek API的例子
  • Java 22 新特性:字符串模板(String Templates)让拼接更优雅、更安全