Compare commits

...

3 Commits

Author SHA1 Message Date
Tom Li 1a676ea238 全局跨域过滤器。 1 week ago
Tom Li 20ebfe8607 format code. 2 weeks ago
Tom Li 75ae372b84 需要配置清单。 2 weeks ago
  1. 9
      src/main/java/org/springblade/Application.java
  2. 39
      src/main/java/org/springblade/modules/jinchao/config/CorsConfig.java
  3. 8
      src/main/java/org/springblade/modules/system/controller/RoleController.java

@ -35,6 +35,15 @@ import org.springframework.session.data.redis.config.annotation.web.http.EnableR
* 启动器
*
* @author Chill
*
* 需要配置清单
*
* 1.服务器公网ip地址 域名端口账号密码告知咱们什么操作系统
* 2.最好有虚拟化环境或者Docker环境没有的话我们可以帮忙安装如下软件环境
* MySQL 8.x
* Redis 6.x
* JDK 21
*
*/
@EnableScheduling
@EnableRedisHttpSession

@ -0,0 +1,39 @@
package org.springblade.modules.jinchao.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;
@Configuration
public class CorsConfig {
/**
* 全局跨域过滤器
*/
@Bean
public CorsFilter corsFilter() {
// 1. 创建跨域配置对象
CorsConfiguration config = new CorsConfiguration();
// 核心:允许所有域名跨域(对应Access-Control-Allow-Origin: *)
config.addAllowedOriginPattern("*");
// 等价于(SpringBoot3.0+推荐用allowedOriginPatterns,替代已过时的allowedOrigins)
// config.setAllowedOrigins(Collections.singletonList("*")); // 旧写法,已标记过时
// 允许所有请求头
config.addAllowedHeader("*");
// 允许所有HTTP方法(GET/POST/PUT/DELETE等)
config.addAllowedMethod("*");
// 允许携带Cookie(如需跨域传递Cookie,需开启此配置)
config.setAllowCredentials(true);
// 预检请求有效期(秒),避免频繁发送OPTIONS请求
config.setMaxAge(3600L);
// 2. 配置跨域规则生效的URL(所有接口)
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", config); // /** 表示所有接口都生效
// 3. 返回跨域过滤器
return new CorsFilter(source);
}
}

@ -96,13 +96,15 @@ public class RoleController extends BladeController {
@GetMapping("/list")
@Parameters({
@Parameter(name = "roleName", description = "参数名称", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
@Parameter(name = "roleAlias", description = "角色别名", in = ParameterIn.QUERY, schema = @Schema(type = "string"))
})
@Parameter(name = "roleAlias", description = "角色别名", in = ParameterIn.QUERY, schema = @Schema(type = "string"))})
@ApiOperationSupport(order = 2)
@Operation(summary = "列表", description = "传入role")
public R<List<RoleVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> role, BladeUser bladeUser) {
QueryWrapper<Role> queryWrapper = Condition.getQueryWrapper(role, Role.class);
List<Role> list = roleService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Role::getTenantId, bladeUser.getTenantId()) : queryWrapper);
List<Role> list = roleService.list(
(!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ?
queryWrapper.lambda().eq(Role::getTenantId, bladeUser.getTenantId()) : queryWrapper
);
return R.data(RoleWrapper.build().listNodeVO(list));
}

Loading…
Cancel
Save