跨域 同源策略通俗讲解

什么是跨域

字面理解,前后端不"同源",这就发生了跨域

怎么区分不同的域

域的组成:协议+域名+端口

同源策略:浏览器的一种安全机制。目的是保证限制前端请求的读取能力,防止恶意网站随意对我们浏览器数据进行读取,造成数据泄露


跨域问题的解决方案:

CORS跨域资源共享

当一个请求发送跨域时,浏览器会给这个请求的请求头加上origin,确定请求来源,相当于自报家门。

后端处理到这个请求时 设置一些字段返回响应

浏览器处理到这个响应时

通过Access-Control-Allow_origin 判断哪些请求源可以访问

通过Access-Control-Allow_Methods 判断哪些请求方法可以访问

通过Access-Control-Allow_Headers 判断哪些请求头可以访问

缺点:

1 需要后端配合

2 非简单请求会导致预检请求,额外发送一次HTTP请求

相关推荐
程序员海军6 小时前
用了两年多 GPT,我最近开始换模型了,还折腾了个求职避坑 Agent
前端·人工智能·后端
码士集团小青6 小时前
SpringBoot 集成缓存性能之王 Caffeine
spring boot·后端·缓存
zttbee7 小时前
echarts图表tooltip色块失效
前端·javascript·echarts
excel8 小时前
IndexNow:让搜索引擎更快发现网站更新的主动通知协议
前端·后端·架构
Json____8 小时前
用 FastAPI + Vue3 打造一套完整的在线考试系统:从组卷到阅卷的业务闭环实践
后端·node.js·fastapi·it学习·wwwoop.com
子兮曰8 小时前
CSS 复现 23 种设计风格:从拟物到液态玻璃的成本阶梯与兜底写法【实战】
前端·css·视觉设计
虚无境9 小时前
如何用AI帮我写出实用的插件
前端·javascript·ai编程
小灰灰搞电子9 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
柳杉9 小时前
从数字化到数智化:3D 可视化大屏的下一个五年
前端·ai编程·数据可视化
专业程序开发源10 小时前
springboot欧缇蔓月子中心管理系统82697-计算机课程设计、毕业设计
java·spring boot·后端·python·spring·django·课程设计