springboot 设置跨域

CORS Chrome在版本91后,preflight验证请求造成两次请求的问题 1.Alt+R 或者Command+R 打开运行框,运行“regedit”以打开 Windows 注册表。2.InsecurePrivateNetworkRequestsAllowed = 1写入注册表。以Chrome 浏览器为例,其它浏览器相似。 阅读详情

 第一种方式:

package com.alibaba.repeater.console.start.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;

/**
 * @author: liuheyng
 * @date: 2021/3/26 11:16
 * @description:
 */
@Configuration
public class CorsConfig {

    private CorsConfiguration buildConfig() {
        CorsConfiguration corsConfiguration = new CorsConfiguration();
        corsConfiguration.addAllowedOrigin("*");
        corsConfiguration.addAllowedHeader("*");
        corsConfiguration.addAllowedMethod("*");
        corsConfiguration.setAllowCredentials(true);
        return corsConfiguration;
    }

    @Bean
    public CorsFilter corsFilter() {
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", buildConfig());
        return new CorsFilter(source);
    }

}

第二种方式:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**").allowedOrigins("*").allowedMethods("*").allowCredentials(true);
    }

}

第三种方式:

@WebFilter(filterName = "simpleCORSFilter", urlPatterns = {"/*"})
public class SimpleCorsFilter implements Filter {

    @Override
    public void destroy() {
    }

    @Override
    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
        HttpServletResponse response = (HttpServletResponse) res;
        response.setHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
        response.setHeader("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Token");
        response.setHeader("Access-Control-Request-Private-Network", "true");
        HttpServletRequest request = null;
        if (req instanceof HttpServletRequest) {
            request = (HttpServletRequest) req;
            if ("OPTIONS".equals(request.getMethod()) || "options".equals(request.getMethod())) {
                return;
            }
        }
        chain.doFilter(req, res);
    }

    @Override
    public void init(FilterConfig arg0) throws ServletException {
    }
}

谷歌新版本跨域错误深度剖析与解决:request client is not a secure context and the resource is in more-private address request client is not a secure context and the resource is in more-private address解决方案 preflight预检请求options请求解决方案 详细分析谷歌专用网络错误导致的跨域问题的原因以及给出相关解决方案 阅读详情

相关推荐

SpringBoot框架RESTful接口设置跨域允许

跨域 跨域请求是指浏览器脚本文件在发送请求时,脚本所在的服务器和请求的服务器地址不一样。跨域是有浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制, 同源策略:是指协议、域名、端口都要相同,其中有一个不同都会产生跨域 SpringBoot框架RESTful接口解决跨域 此处是有配置文件的方式来解决的 package com.prereadweb.config.cors...

Snow、杨 3499

nginx配置详解-- nginx.conf

nginx全局配置,server配置location配置

墨迹斑斑的老墙 3040

你知道吗?chrome自动更新到104版本,居然引起Java服务内存泄漏

近期在工作中,遇到了一次很有意思的内存泄漏,把排查过程和思路记下来,供大家参考和学习,如有不正确的,欢迎指正。1、为什么都是半托管的客户报这个问题,公有云未有客户反馈答:只有半托管客户满足公有ip访问私有ip的条件,且部分用户的chrome浏览器自动更新了2、这些半托管的客户为了稳定,代码已经很久没升级,代码都是2021年的,为什么都跟商量好似的,一起报问题,难道我有bug吸引体质?答:chrome自动更新导致3、为什么这些客户,物理机房隔离,问题表象却都一样?...

死磕音视频 547

Chrome 重大更新,CORS 增加了两个新的请求头?

这个版本,对私有网络的限制正式生效啦,主要目的是保护用户免受针对私有网络上的路由器和其他设备的。地址比发起请求的网址更私密,私有网络的预检请求也会针对同源请求发送。能问出这俩问题,一定没好好看我的公众号,其实之前在多篇文章里都提到过相关的策略解读,注意:无论请求方法和模式如何,都会为所有私有网络请求发送预检请求。同源请求的预检请求还可防止。开始,如上面我们介绍的预检请求失败,请求依然会成功,但会在。,也是可以请求成功的,不过这个风险较大,不建议设置。)会限制网站向私有网络上的服务器发送请求的能力。...

Benxiaohai_311的博客 2798

Chapter 5 Gate Drivers and Level Shifters

Gate driver如下图所示, 包括功率管(带保护), Gate driver, Level shifter, Gate Supply 和Dead-time control.

2304_76736886的博客 2236

MOLDFLOW 2012模流分析基础到实战视频教程

├ 1第一讲MF软件安装与界面定制及模流前期准备工作及分析流程介绍 ├ 2第二讲MF建模工具条命令讲解与图层的运用 ├ 3第三讲MF网格类型与适应范围及网格划分、诊断、修复与统计 ├ 4第四讲MF中CAD doctor 模块对导入模型的修复方法与实例 ├ 5第五讲MF中常见各种流道浇口及水路的建模方法与外部导入方法上 ├ 6第六讲MF产品模型导入CAD DOCTOR与修复 ├ 7第七讲MF分析序列设定与网格的划分与诊断及修复 ├ 8第八讲MF材料选择与成型工艺参数设定 ├ 9第九讲MF创建浇注系统:主流道、

QQ_1987083845的博客 2545

SpringBoot设置跨域的几种方式

来源是URL的结构是这样的,在这个URL的组成部分中,Origin是指协议、主机和端口号的组合,例如:80、443。CORS 的出现是因为来源不同。也就是说,必须遵守 SOP。-> 这意味着该政策只允许相同的来源。过去,出于安全考虑,严格只允许来自同一来源的通信,但最近,从不同来源获取和使用资源变得非常普遍,因此创建了作为 SOP 例外的 CORS 策略。当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域首先编写一个过滤器,可以起名字为MyCorsFilter.java。

zzhongcy的专栏 935

避坑指南:PyTorch ConvLSTM参数配置的那些坑(hidden_dim/kernel_size/num_layers详解)

本文深度解析PyTorch ConvLSTM中hidden_dim、kernel_size和num_layers三大核心参数的配置技巧,提供实战指南和性能优化建议。通过实验数据揭示参数组合的内在规律,帮助开发者避免常见配置陷阱,提升时空序列建模效果。特别针对视频预测、气象预报等应用场景,给出黄金参数组合方案和调试技巧。

vv45678的博客 702

Springboot设置跨域以及设置多个跨域地址

文章引用 https://www.cnblogs.com/yhcjhun/p/10879690.html https://www.cnblogs.com/Java-Starter/p/7603313.html Springboot设置跨域的三种方式 方式一(精细配置) 在需要跨域的整个Controller或者单个方法上添加@CrossOrigin注解 方式二(全局配置) @Configuration public class WebMvcConfig extends WebMvcConfigurerAd.

风华流沙君莫笑的博客 3172

睿尔曼复合机器人之底盘操作流程

控制键”按下后,可在键盘上通过‘i’(向前),‘k’(向后),‘j’(向左旋转),‘l’(向右旋转)四个按键对底盘进行运动控制。选中禁⾏线功能后,使⽤⿏标在界⾯内点击选择起点,继续在其他地⽅点击,两点之间会连成⼀条线,可以进⾏多次连续点击,形成连续线条。4)扫图完成后,软件会重新启动,返回到监控页面,点击“激光”可看到当前机器激光扫描的实时数据,在页面上表现为红色边界线,点击菜单栏“控制”键使底盘在一定范围内运动,扫描到尽可能多的边界线,可发现与实际地图的黑色边界线不同,需要进行手动校正。

realman_Rop的博客 1474

Alphafold2/multimer Conda环境配置与GPU加速优化指南

本文详细介绍了如何在本地服务器或工作站上,通过Conda环境配置并优化GPU加速来部署Alphafold2及其多聚体版本Alphafold2-multimer。内容涵盖从硬件准备、依赖安装、数据库部署到实战预测与常见报错处理的全流程,重点解决了本地安装过程中的依赖冲突与GPU调用失败等关键问题,帮助研究人员高效运行这一蛋白质结构预测工具。

neovim7hacker的博客 470

SpringBoot跨域设置

官方文档位置 https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc-cors-intro SpringBoot跨域方法 官方一共提供了三种方法去配置跨域 1.@CrossOrigin @RestController public class HelloController { @CrossOrigin @GetMapping("/Cors") public String co

Rmx的技术小站 434

31、Labview如何搭建程序框架?--状态机到数据采集等常用框架

本文废话不多,直接列举几种框架搭建方式,为了尽量向大家提供干货,本文直接从简介和手把手教搭建框架两方面来讲解,本文提到五种经典框架模式,学会这五种就很够了,分别是:状态机框架(State Machine)、生产者-消费者框架(Producer-Consumer)、主-从框架(Master-Slave)、事件驱动框架(Event-Driven)、分层架构(Layered Architecturep)。这个框架是基于状态机结构的。顾名思义“状态机”就是个“切换程序状态的机器”。本质是一个。

关注我,更多技术问题欢迎私聊~ 3101

SpringBoot 跨域请求设置

当它请求的一个资源是从一个与它本身提供的第一个资源的不同的域名时,一个资源会发起一个跨域HTTP请求(Cross-site HTTP request)。 比如说,域名A (http://domaina.example) 的某 Web 应用程序中通过< img>标签引入了域名B(http://domainb.foo) 站点的某图片资源(http://domainb.foo/ima...

一花一世界 346

USB 网卡——RNDIS 控制消息流程

在其控制端点上获取控制消息时,设备必须在通信类接口的中断 IN 端点上返回通知,每当设备可以返回控制消息时,主机就会轮询该通知。需要注意的是,如果设备由于某种原因收到GET_ENCAPSULATED_RESPONSE,并且无法使用控制端点上的有效数据做出响应,则应返回设置为 0x00 的单字节数据包,而不是 stall 控制端点。下表中定义了此传输。收到 RESPONSE_AVAILABLE 通知后,主机使用下表中定义的GET_ENCAPSULATED_RESPONSE 传输从控制端点读取控制消息。

tyustli 371

YOLOv11改进 ,YOLOv11改进主干网络为MobileNetV3,助力涨点

MobileNetV3通过结合硬件感知网络架构搜索(NAS)和NetAdapt算法,通过新颖的架构改进进一步提升了性能。本文开始探讨了自动化搜索算法与网络设计如何协同工作,以利用互补方法来提升整体技术水平。通过这一过程,创建了两个新的MobileNet模型:MobileNetV3-Large和MobileNetV3-Small,分别针对高资源和低资源使用场景。这些模型随后被适配并应用于目标检测和语义分割任务。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 1933

springboot设置跨域的几种方式

在进行web项目开发的时候,前后端分离往往是很常见的开发方式,而说到前后端分离,最常见的问题无非就是跨域了。如何解决跨域问题几乎已经成为了web开发的必修课。本文将提供几种常见的基于springboot的跨域解决思路,鉴于作者水平有限,若有错误,欢迎指正。 单个Controller及方法: @CrossOrigin作为一个强大的注解,特点就是不仅支持在controller中设置,...

Welcome to Domla's world 3886

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

springboot 设置CorsFilter跨域不生效问题

问题描述 公司的前后端开发项目工程,在本地调试的时候遇到了跨域的问题,同事调我的服务一直提示跨域问题,然后前端nb他自己在哪里做了跨域处理,类似nginx那种,但是我还是百度去看了一下,在一个大佬的博客中发现了解决方案,转载一下。 问题原因是是写的判断登录的filter影响了登录,原因是的这个filter执行顺序在corsfilter之前导致,于是修改了一下跨域设置的配置文件 /** ...

however_zx的博客 1万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Spring Boot和Spring Cloud 跨域设置失败

Spring Boot 跨域设置 import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; im

hc的博客 505

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

spring:Springboot设置跨域访问 & Spring Security设置跨域访问

通过实现 WebMvcConfigurer 接口并重写 addCorsMappings 方法来全局配置 CORS。这种方法会应用于所有的控制器。如果你只想对特定的控制器或方法启用 CORS,你可以在该控制器或方法上使用 @CrossOrigin 注解。在 configure(HttpSecurity http) 方法中进行这个配置。1、添加SpringSecurity的依赖配置。2、配置 Spring Security。

分享前端开发工程师的一些日常生活、前端知识点、职业发展、对一些问题的看法、感悟等等 999

前端ajax请求跨域及Spring Boot后端允许跨域设置

前端ajax请求跨域设置 ajax请求里加上xhrFields: { withCredentials: true },crossDomain: true 例如: <script> jQuery(document).ready(function () { $("#getotp").on("click", function () { var...

Kainx 830

SpringBoot全局跨域设置

SpringBoot全局跨域设置 方法一 使用注解对接口进行跨域设置 @CrossOrigin(origins = "*", maxAge = 3600) @RestController @RequestMapping("/test") public class TestController { @GetMapping("get") public String get() { // ... } } 这种方式不算全局设置,需要自己在对应的Controlle

孙霸天的专栏 3334

Spring boot设置允许跨域

跨域永远是后台开发遇到的一个永恒问题,使用Spring boot开始时需要进行跨域,查看了网上的一些方法,说的都不是非常清楚,不适合刚刚入门的新手,这里我总结一下: 新建类 package com.example.demo; import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.s...

做GIS梦的人 1215

springboot设置Cors跨域

springboot设置Cors跨域的四种方式

weixin_44892460的博客 113

Vite、SpringBoot跨域设置

Vite、SpringBoot跨域设置

weixin_42509509的博客 542

springboot2.x 设置允许跨域请求

springboot2.x 设置允许跨域请求 最近使用axios请求的时候出现了跨域请求被拦截的问题,如下图: 找了一些解决方法,总结一下主要有两种解决方法。 1.配置cors配置类,也可以说是cors过滤器,这是设置全局请求都允许跨域 package com.zzdreamz.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configur

zzdreamz的博客 480
上一篇: Java多线程 之 Semaphore源码分析
下一篇: kibana message 显示日志行不全,被截断
wenyixicodedog
博客等级 码龄8年 87粉丝 116原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值