小编Moh*_*ved的帖子

从数据库中动态检索控制器中特定方法的 Spring Boot CORS 配置

我正在尝试使用以下命令在控制器级别设置 CORS 配置

@CrossOrigin on Controller and Handler Method

public class AccountController {

@CrossOrigin("retreive data from DB")
@RequestMapping("/{id}")
public Account retrieve(@PathVariable Long id) {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

}

我尝试过使用下面的方法,但它仅在 Spring Boot 启动时设置,并且仅在下次重新启动服务时才进行更改......

@Bean
public CorsFilter corsFilter() {
    UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
   // CorsConfiguration config = jHipsterProperties.getCors();

       CorsConfiguration config=CorsService.fetchCorsConfigFromDb;
    if (config.getAllowedOrigins() != null && !config.getAllowedOrigins().isEmpty()) {
        log.debug("Registering CORS filter");
        source.registerCorsConfiguration("/api/**", config);
        source.registerCorsConfiguration("/management/**", config);
        source.registerCorsConfiguration("/v2/api-docs", config);
    }
    return new CorsFilter(source);
}
Run Code Online (Sandbox Code Playgroud)

fetchCorsConfigFromDb将从数据库获取数据。仅当 Spring Boot 应用程序重新启动时,数据库中的任何更改才会反映出来......

java cors spring-boot jhipster microservices

4
推荐指数
1
解决办法
1792
查看次数

标签 统计

cors ×1

java ×1

jhipster ×1

microservices ×1

spring-boot ×1