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

@CrossOrigin注解解决跨域问题

文章目录

  • 一、什么是跨域
  • 二、@CrossOrigin注解是干什么用的
  • 三、用法

一、什么是跨域

跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。
所谓同源是指,域名,协议,端口均相同,举个栗子:

  • http://www.123.com/index.html 调用 http://www.123.com/server.PHP (非跨域)
  • http://123.com/index.html 调用http://456.com/server.php (主域名不同:123/456,跨域)
  • http://www.abc.123.com/index.html 调用 http://www.def.123.com/server.php(子域名不同:abc/def,跨域)
  • http://www.123.com:8080/index.html调用http://www.123.com:8081/server.php(端口不同:8080/8081,跨域)
  • http://www.123.com/index.html 调用 https://www.123.com/server.php(协议不同:http/https,跨域)

二、@CrossOrigin注解是干什么用的

@CrossOrigin是一个Java注解,用于指示浏览器允许跨域请求资源。在Web应用程序中,如果JavaScript代码试图从一个域名获取来自不同域名的资源,这将会触发浏览器的同源策略,从而导致浏览器阻止跨域请求。使用@CrossOrigin注解可以允许浏览器绕过同源策略,从而允许跨域请求。

@CrossOrigin注解可以用于类级别或方法级别,如果用于类级别,将适用于整个类中的所有方法。它接受一些参数,包括:

  • origins:指示允许跨域请求的来源。默认情况下,它是"*",表示允许来自任何来源的跨域请求。
  • methods:指示允许的HTTP方法。默认情况下,它包括GET、HEAD和POST。
  • maxAge:指示浏览器可以缓存预检请求的时间(以秒为单位)。
  • allowedHeaders:指示允许的请求头。
  • exposedHeaders:指示可以访问响应头的列表。

总之,使用@CrossOrigin注解可以解决跨域请求的问题,使得Web应用程序能够更灵活地使用跨域资源。

三、用法

在controller层接口上加上@CrossOrigin注解即可。

	@CrossOrigin@RequestMapping("/sayHello")public String sayHello() {return userService.sayHello();}

相关文章:

@CrossOrigin注解解决跨域问题

文章目录 一、什么是跨域二、CrossOrigin注解是干什么用的三、用法 一、什么是跨域 跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。 所谓同源是指,域名,协议&…...

【力扣】45. 跳跃游戏 II

Problem: 45. 跳跃游戏 II 文章目录 问题思路复杂度Code 问题 思路 核心思路,例如nums[i]5,那么最远能跳五步; //那么在这接下来1-5范围内,哪个能让我跳的最远,这个最远指的是 -------------------------------------…...

【Python基础】19.eval函数的使用

eval函数 eval()将字符串转变为有效的表达式来求值并返回对应的结果 基础数据计算 In [1]: eval("1 1") Out[1]: 2字符串重复 In [2]: eval (" * * 10") Out[2]: **********字符串转为列表 In [3]: type(eval("[1,2,3,4,5]")) Out[3]: lis…...

对装饰器模式的理解

目录 一、场景二、面对场景中的新需求,我们怎么办?1、暴力法:直接修改原有的代码。2、子类继承法:既然要增强行为,那我搞一个子类,覆写不就完事了?3、装饰器模式 三、对装饰器模式的思考1、从代…...

在替换微软AD的CA证书服务AD CS前,要先做哪些准备工作?

AD CS是什么 关于这个问题,有几个概念需要先弄明白:PKI、CA、数字证书。 PKI(Public Key Infrastructure,公钥基础设施)是提供公钥加密和数字签名服务的系统或平台,实现基于公钥密码体制的密钥和证书的产生…...

Java中的System

文章目录 概要小结 概要 在Java中,System类提供了一些静态方法来实现与系统相关的操作。以下是System类中常用的方法及其含义: System.currentTimeMillis():返回当前时间(以毫秒为单位)自1970年1月1日00:00:00 GMT以来…...

Mybites一对多collection

Goods实体属性&#xff1a; private List<GoodsImg> goodsImgList; private String id; private String name; GoodsImg实体属性&#xff1a; private String id; private String fid; private String imgpath; …...

基于springboot实现图书进销存管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现图书进销存管理系统演示 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了图书进销存管理系统的开发全过程。通过分析图书进销存管理系统管理的不足&#xff0c;创建了一个计算机管理图书进销…...

敏捷开发:想要快速交付就必须舍弃产品质量?

随着敏捷的推广与应用&#xff0c;如今已经成为了最有效的团队级别的方法论&#xff0c;越来越多的软件和 IT 团队正在采用敏捷&#xff0c;但是你在敏捷吗&#xff1f; 自从那一群充满影响力的软件从业者聚集在一起并发布了《敏捷宣言》以来&#xff0c;已经过去了 23 年。敏…...

SNMP-详解指南

目录 SNMP介绍 SNMP的工作机制轮询 SNMP的MIB&#xff08;管理信息库&#xff09; SNMP是基于UDP协议 SNMP介绍 SNMP&#xff08;Simple Network Management Protocol&#xff0c;简单网络管理协议&#xff09;是一种广泛应用于互联网上的网络管理协议。它提供了一种标准化…...

vue-router 原理【详解】hash模式 vs H5 history 模式

hash 模式 【推荐】 路由效果 在不刷新页面的前提下&#xff0c;根据 URL 中的 hash 值&#xff0c;渲染对应的页面 http://test.com/#/login 登录页http://test.com/#/index 首页 核心API – window.onhashchange 监听 hash 的变化&#xff0c;触发视图更新 window.onhas…...

WebGl/Three 粒子系统 人物破碎及还原运动

粒子 首先&#xff0c;加载模型&#xff0c;这是万千粒子的前身&#xff0c;模型对象由很多面构成&#xff0c;这些面又是由各个点构成的&#xff0c;所以可以将模型的几何体对象geometry赋给粒子对象&#xff0c;粒子物体用Points方式渲染 bloader.load("obj/female02/Fe…...

华为OD-C卷-分披萨[100分]

题目描述 "吃货"和"馋嘴"两人到披萨店点了一份铁盘(圆形)披萨,并嘱咐店员将披萨按放射状切成大小相同的偶数个小块。但是粗心的服务员将披萨切成了每块大小都完全不同奇数块,且肉眼能分辨出大小。 由于两人都想吃到最多的披萨,他们商量了一个他们认…...

uniapp 中video标签视频禁止快,拖拽快进

废话不多说&#xff0c;直接上代码 <video id"myVideo" :src"sectionInfo.type_config.video_url" timeupdate"bindtimeupdate"></video> <script>export default {data() {return {historyTime: 0,}},methods:{// 监听播放进…...

网页端HTML使用MQTTJs订阅RabbitMQ数据

最近在做一个公司的日志组件时有一个问题难住了我。今天问题终于解决了。由于在解决问题中&#xff0c;在网上也查了很多资料都没有一个完整的实例可以参考。所以本着无私分享的目的记录一下完整的解决过程和实例。 需求&#xff1a;做一个统一日志系统可以查看日志列表和一个可…...

课题学习(二十一)----姿态更新的四元数算法推导

声明&#xff1a;本人水平有限&#xff0c;博客可能存在部分错误的地方&#xff0c;请广大读者谅解并向本人反馈错误。    最近需要使用AEKF对姿态进行结算&#xff0c;所以又对四元数进了深入的学习&#xff0c;本篇博客仅对四元数进行推导&#xff0c;后续会对基于四元数的…...

NL2SQL进阶系列(5):论文解读业界前沿方案(DIN-SQL、C3-SQL、DAIL-SQL、SQL-PaLM)、新一代数据集BIRD-SQL解读

NL2SQL进阶系列(5)&#xff1a;论文解读业界前沿方案&#xff08;DIN-SQL、C3-SQL、DAIL-SQL&#xff09;、新一代数据集BIRD-SQL解读 NL2SQL基础系列(1)&#xff1a;业界顶尖排行榜、权威测评数据集及LLM大模型&#xff08;Spider vs BIRD&#xff09;全面对比优劣分析[Text2…...

双指针运用:删除重复元素、移除元素

26.删除重复元素 题目描述 给你一个 非严格递增排列 的数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使每个元素 只出现一次 &#xff0c;返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元…...

什么是三高架构

三高架构是指在软件系统设计与开发中&#xff0c;注重解决高并发性、高可用性和高性能的架构设计模式。 高并发性&#xff1a;指系统能够处理大量并发请求的能力。在高并发场景下&#xff0c;系统需要具备有效的并发处理机制&#xff0c;以保证系统能够快速、准确地响应大量并…...

Unity 对APK签名

关键代码 PS D:\UnityProject\YueJie> jarsigner -verbose -keystore D:\UnityProject\YueJie\user.keystore -signedjar D:\UnityProject\YueJie\meizuemptyapk-release-signed.apk D:\UnityProject\YueJie\MeizuEmpty-release-unsigned.apk 1 示例 # jarsigner的命令格…...

SINAMICS V90伺服驱动器故障代码大全

SINAMICS V90伺服驱动器在运行过程中可能出现故障&#xff0c;导致设备停机。用户可通过BOP面板或调试软件查看故障代码&#xff0c;并根据以下信息判断故障原因及处理方法。序号报警号信息故障信息可能原因处理方法1F1000内部软件错误出现了一个内部软件错误。分析故障缓冲器为…...

Python金融数据分析实战:从数据清洗到LLM智能问答机器人构建

1. 项目概述&#xff1a;一个金融数据分析与智能问答的实战项目 最近在整理一些数据分析的实战项目&#xff0c;正好翻到了之前为Forage BCGX GenAI项目做的一个金融分析案例。这个项目麻雀虽小&#xff0c;五脏俱全&#xff0c;它完整地走了一遍从原始数据清洗、指标计算、可视…...

思考的快与慢:模型的“即时回答”与“深思熟虑”

上一篇文章我们学会了如何“使唤”模型&#xff1a;同步、异步、批量、流式&#xff0c;一通操作下来&#xff0c;你已经是调接口的好手了。但很快你可能会发现一个有意思的现象——同样是回答问题&#xff0c;有时候模型快到几乎零秒响应&#xff0c;有时候却要停顿好几秒甚至…...

Tarjan算法:从DFS序到强连通分量的寻路指南(附C++实战与缩点技巧)

1. 从迷宫探索到强连通王国&#xff1a;Tarjan算法的生活隐喻 想象你正在探索一座巨大的迷宫&#xff0c;手里拿着粉笔和记事本。每走到一个新的岔路口&#xff0c;你就在墙上标记数字&#xff08;第一个到的路口标1&#xff0c;第二个标2...&#xff09;&#xff0c;这就是DFS…...

Docker Desktop 磁盘空间占用过大?手把手教你彻底瘦身

前言 很多使用 Docker Desktop for Windows 的同学都会遇到一个头疼的问题&#xff1a;明明没有拉取多少镜像&#xff0c;Docker 却占用了几十甚至上百 GB 的磁盘空间。更让人困惑的是&#xff0c;执行了 docker system prune 清理命令后&#xff0c;磁盘空间完全没有变化&…...

从理论到落地,一文读懂现代AI Agent的完整记忆流水线

来源&#xff1a;DeepHub IMBA 本文约6500字&#xff0c;建议阅读13分钟本文介绍 AI Agent 四大记忆分类与流水线&#xff0c;解析生产架构、选型方案及常见落地误区。每一次 LLM 调用都是无状态的。模型读上下文窗口&#xff0c;生成响应然后忘掉一切。这对单轮问答没问题。对…...

别再死记硬背了!用Python+Graphviz把离散数学的图论和关系画出来(附代码)

用PythonGraphviz将离散数学中的抽象概念可视化 离散数学是计算机科学的基础课程之一&#xff0c;但其中的图论、二元关系等概念往往因为高度抽象而让学习者感到困惑。传统的死记硬背方式不仅效率低下&#xff0c;也难以真正理解这些概念的本质。本文将介绍如何利用Python的net…...

Cadence焊盘绘制实战:从零到一构建PCB封装基石

1. 为什么焊盘设计是PCB封装的基石 刚入行硬件设计那会儿&#xff0c;我总以为画封装就是照着尺寸描边。直到有次量产时发现整批QFN芯片虚焊&#xff0c;才明白焊盘设计才是封装可靠性的命门。Cadence的分离式设计哲学——将焊盘&#xff08;Padstack&#xff09;与封装&#x…...

Temu 批量视频更新效率:10 分钟搞定全店素材,抢占内容流量高地

2026 年 Temu 平台内容化流量分配机制全面落地&#xff0c;商品视频权重持续攀升&#xff0c;成为决定搜索排名与转化效果的核心变量。但多数卖家仍受困于手动逐个上传视频的低效模式&#xff0c;错失流量红利。凌风工具箱基于 Temu 官方 API 开发的批量视频更新功能&#xff0…...

保姆级教程:在银河麒麟Normal模式下,用kysec_set给第三方软件‘开绿灯’

银河麒麟系统下第三方软件安全授权全流程指南 在国产操作系统逐步普及的今天&#xff0c;银河麒麟作为主流选择之一&#xff0c;其安全机制设计严谨但有时也会给日常运维带来挑战。最近连续三个项目部署中&#xff0c;我都遇到了相同的问题——开发团队提供的工具包在测试环境运…...