1、升级到spring-boot到最新版本2.5.12防止RCE漏洞
2、替换spring-boot依赖配置 更改 version版本号
<!-- SpringBoot的依赖配置-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.5.12</version>
<type>pom</type>
<scope>import</scope>
</dependency>
3、替换完version版本之后启动项目 会提示datasource连接异常
4、这是因为springboot2.5.6之前的版本 是使用
org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
数据源
springboot 2.5.6之后数据源更改为
org.quartz.jobStore.class=org.springframework.scheduling.quartz.LocalDataSourceJobStore
5、在ruoyi-quartz模块下 config目录下 ScheduleConfig.java文件 进行替换
6、替换完之后在重启项目
7、启动好之后 运行前端代码 运行成功之后访问地址 这时候会出现
Uncaught (in promise) 无效的会话,或者会话已过期,请重新登录。
控制台报错
When allowCredentials is true, allowedOrigins cannot contain the special value "*"since that cannot be set on the “Access-Control-Allow-Origin”
意思是
当allowCredentials为true时,allowingOrigins不能包含特殊值“ *”,因为无法在“ Access-Control-Allow-Origin”响应标头上设置。要允许凭据具有一组来源,请明确列出它们或考虑改用“ allowedOriginPatterns
8、这个问题是因为springboot 跨域配置
解决方法
在ruoyi-framework 模块下 framework目录下 config目录下 ResourcesConfig.java文件
跨域配置方法中覆盖代码
CorsConfiguration config = new CorsConfiguration();
config.setAllowCredentials(true);
// 设置访问源地址
config.addAllowedOriginPattern("*");
// 设置访问源请求头
config.addAllowedHeader("*");
// 设置访问源请求方法
config.addAllowedMethod("*");
// 有效期 1800秒
config.setMaxAge(1800L);
// 添加映射路径,拦截一切请求
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", config);
// 返回新的CorsFilter
return new CorsFilter(source);
9、配置完成之后重启项目