HTTP跨域
1. 简介
HTTP跨域是指不同域名下的网页请求资源时,由于浏览器同源策略限制,导致请求被阻止。为解决这一问题,开发者常采用跨域资源共享(CORS)等技术来允许合法跨域请求,确保网站功能正常运行。
同源
- 协议
- 域名
- 端口
常见HTTP跨域技术
- 跨域资源共享(CORS):下面会专门介绍。
- JSONP:下面会专门介绍。
- WebSocket:WebSocket不受同源策略限制,可以实现跨域通信。
- 代理服务器:在服务器端设置一个代理,前端请求发送到这个代理,然后由代理去请求真正的跨域资源,最后返回给前端。
2. 跨域资源共享(CORS)
2.1. 简介
跨域资源共享(CORS)是一种Web标准,允许浏览器和服务器交互,确定是否允许跨源请求,从而克服同源策略限制,实现跨域数据交互。
2.2. 允许跨域资源共享
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Content-Type, Content-Length, Authorization, Accept, X-Requested-With, X_Requested_With
Access-Control-Allow-Methods: GET, POST
Access-Control-Expose-Headers: header_name1,header_name2
- Access-Control-Allow-Origin:允许请求源
- Access-Control-Allow-Headers:允许的请求头(CORS Missing Allow Header)
- Access-Control-Allow-Methods:允许的请求方法
- Access-Control-Expose-Headers:允许请求对象读取响应的头
2.3. 允许携带Cookie
浏览器
// 创建ajax对象
var xhr = new XMLHttpRequest();
// 对ajax对象进行配置
xhr.open('post', 'http://localhost:8080/xxxx');
// 当发送跨域请求时,携带cookie信息
xhr.withCredentials = true;
// 下面省略
服务端
Access-Control-Allow-Credentials:true
注意
如果服务器设置了Access-Control-Allow-Credentials:true时Access-Control-Allow-Origin不能为*。
这是因为当发送凭据时,出于安全考虑,不允许使用通配符来允许所有源。
3. JSONP
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Example</title>
</head>
<body>
<h1>hello world</h1>
<h1>当前页面是http://localhost:8080,注意端口是不一致的。</h1>
</body>
<!--js路径后面添加请求参数,服务器根据请求参数动态替换test.js中数据-->
<script src="http://localhost:8081/test.js?key1=value1&key2=value2"></script>
</html>
4. 参考
- vue axios无法获取响应头字段
相关文章:
HTTP跨域
1. 简介 HTTP跨域是指不同域名下的网页请求资源时,由于浏览器同源策略限制,导致请求被阻止。为解决这一问题,开发者常采用跨域资源共享(CORS)等技术来允许合法跨域请求,确保网站功能正常运行。 同源 协议…...
用Python的turtle库绘制皮卡丘
turtle库的简介 turtle(海龟)库是turtle绘图体系的python实现,turtle库是一种标准库,是python自带的。 turtle(海龟)是一种真实的存在,有一个海龟在窗口的正中心,在画布上游走,走过的轨迹形成了绘制的图形࿰…...
C语言打印当前时间
#include <time.h> void print_current_time(char* func_name) { // 获取当前的时间 time_t current_time; time(¤t_time); // 将时间转换为本地时间格式 struct tm *local_time localtime(¤t_time); // 打印当前的时间 …...
(一)基于IDEA的JAVA基础4
注释文本,注释模版 单行注释://开头放在代码前面,对少部分。 多行注释:快捷方式ctrlshift/,对段落代码注 释。 文档注释:/**……**/,用于声明作者或创作时 间。 文档注释如何设置,首先找到File中…...
【Python】复习12:标准库与第三方库
目录 概念标准库第三方库总结Python 标准库`os` 模块`sys` 模块`json` 模块`re` 模块`datetime` 模块代码示例`os` 模块例子`sys` 模块例子`json` 模块例子`re` 模块例子`datetime` 模块例子第三方库`numpy``pandas``requests`安装第三方库使用第三方库其他一些流行的Python库数…...
CUDA 12介绍
CUDA(Compute Unified Device Architecture)是由 NVIDIA 开发的并行计算平台和应用程序编程接口(API)。CUDA 使开发人员能够使用 NVIDIA GPU 进行通用目的的并行计算。CUDA 通过利用 GPU 的大规模并行计算能力来加速各种类型的计算…...
旅游系统-软件与环境
运行 1.下载软件并进行环境配置 2.导入项目包以及SQL文件 (1)VsCode 管理员运行打开 a.新建terminal 注意: 1.执行 npm config set registry https://registry.npm.taobao.org 2.执行 npm install 3.执行 $env:NODE_OPTIONS“–openssl-legacy-provider” b.输入…...
AI基础知识(2)--决策树,神经网络
1.什么是决策树? 决策树是一类常见的机器学习方法,决策树是基于树的结构来进行决策。决策过程中提出的每一个问题都是对于属性的“测试”,决策的最终结论对应了我们希望的判定结果。一个决策树包含一个根节点,若干个内部节点和若…...
蓝桥杯C++大学B组一个月冲刺记录2024/3/21
蓝桥杯C大学B组一个月冲刺记录2024/3/20 规则:每日三题 今日的题很简单┗|`O′|┛ 嗷~~ 1.奶酪 现有一块大奶酪,它的高度为 h ,它的长度和宽度我们可以认为是无限大的,奶酪中间有许多半径相同的球形空洞。 我们可以在…...
由浅到深认识C语言(14):枚举
该文章Github地址:https://github.com/AntonyCheng/c-notes 在此介绍一下作者开源的SpringBoot项目初始化模板(Github仓库地址:https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址:https://blog.csdn…...
速盾cdn:cdn节点缓存内容不一致怎么办?
在使用CDN服务时,有时候可能会遇到CDN节点缓存内容不一致的情况。这种情况会导致用户访问网站时获取到的内容不一致,给用户带来困惑和不良体验。那么当遇到这种情况时,我们应该如何解决呢? 首先,我们需要了解CDN是如何…...
【LAMMPS学习】三、构建LAMMPS(6)在构建中包含软件包
3. 构建 LAMMPS 3.6.在构建中包含软件包 在 LAMMPS 中,包是一组启用一组特定功能的文件。例如,分子系统的力场或刚体约束都在封装中。在 src 目录中,每个包都是一个子目录,包名称为大写字母。 包文档页面上给出了包的概述。每…...
apache commons-dbcp Apache Commons DBCP 软件实现数据库连接池 commons-dbcp2
DBCP组件 许多Apache项目支持与关系型数据库进行交互。为每个用户创建一个新连接可能很耗时(通常需要多秒钟的时钟时间),以执行可能需要毫秒级时间的数据库事务。对于一个公开托管在互联网上的应用程序,在同时在线用户数量可能非…...
8.2K star!史上最强Web应用防火墙
🚩 0x01 介绍 长亭雷池SafeLine是长亭科技耗时近 10 年倾情打造的WAF(Web Application Firewall),一款敢打出口号 “不让黑客越雷池一步” 的 WAF,我愿称之为史上最强的一款Web应用防火墙,足够简单、足够好用、足够强的免费且开源…...
浅谈RPC的理解
浅谈RPC的理解 前言RPC体系Dubbo架构最后 前言 本文中部分知识涉及Dubbo,需要对Dubbo有一定的理解,且对源码有一定了解 如果不了解,可以参考学习我之前的文章: 浅谈Spring整合Dubbo源码(Service和Reference注解部分&am…...
JDK发布信息、历史及未来规划
1.未来规划 发布日期类型版本其它信息2026-01-20CPU25.0.2, 21.0.10, 17.0.18, 11.0.30, 8u4812025-10-21CPU25.0.1, 21.0.9, 17.0.17, 11.0.29, 8u4712025-09-16Feature*25 LTS2025-07-15CPU24.0.2, 21.0.8, 17.0.16, 11.0.28, 8u4612025-04-15CPU24.0.1, 21.0.7, 17.0.15, 1…...
帅帅密码管理系统使用教程
在这个账号满天飞的大环境,密码太多,又容易遗忘,又不方便管理,存在记事本上,又担心泄漏。帅帅密码管理系统就是帮助你解决以上烦恼,用来帮助个人或团队管理众多的登陆密码,能够快速的查询、新增…...
漫谈5种注册中心
01 注册中心基本概念 1.1 什么是注册中心? 注册中心主要有三种角色: 服务提供者(RPC Server):在启动时,向 Registry 注册自身服务,并向 Registry 定期发送心跳汇报存活状态。 服务消费者&…...
Vulnhub靶机:Kioptrix_2014
一、介绍 运行环境:Virtualbox和vmware 攻击机:kali(192.168.56.101) 靶机:Kioptrix: 2014(192.168.56.108) 目标:获取靶机root权限和flag 靶机下载地址:https://ww…...
Spring Boot整合Spring Security
Spring Boot 专栏:Spring Boot 从零单排 Spring Cloud 专栏:Spring Cloud 从零单排 GitHub:SpringBootDemo Gitee:SpringBootDemo Spring Security是针对Spring项目的安全框架,也是Spring Boot底层安全模块的默认技术…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
k8s从入门到放弃之HPA控制器
k8s从入门到放弃之HPA控制器 Kubernetes中的Horizontal Pod Autoscaler (HPA)控制器是一种用于自动扩展部署、副本集或复制控制器中Pod数量的机制。它可以根据观察到的CPU利用率(或其他自定义指标)来调整这些对象的规模,从而帮助应用程序在负…...
游戏开发中常见的战斗数值英文缩写对照表
游戏开发中常见的战斗数值英文缩写对照表 基础属性(Basic Attributes) 缩写英文全称中文释义常见使用场景HPHit Points / Health Points生命值角色生存状态MPMana Points / Magic Points魔法值技能释放资源SPStamina Points体力值动作消耗资源APAction…...
MeshGPT 笔记
[2311.15475] MeshGPT: Generating Triangle Meshes with Decoder-Only Transformers https://library.scholarcy.com/try 真正意义上的AI生成三维模型MESHGPT来袭!_哔哩哔哩_bilibili GitHub - lucidrains/meshgpt-pytorch: Implementation of MeshGPT, SOTA Me…...
