请教一下各位老哥 Cors 的配置问题

2021-02-05 22:36:21 +08:00
 chenlee9876

Java 初学,在跟着网课搭网站 目前在学跨域这一块 这是我的配置文件

@Configuration
public class CorsConfig {

    public CorsConfig() {
    }

    @Bean
    public CorsFilter corsFilter() {
        CorsConfiguration config = new CorsConfiguration();
        config.addAllowedOrigin("http://localhost:8080");
        config.setAllowCredentials(true);
        config.addAllowedMethod("*");
        config.addAllowedHeader("*");
        UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();
        configSource.registerCorsConfiguration("/**", config);
        return new CorsFilter(configSource);

在 idea 里 configSource 下面会报 error 错误提示

'org.apache.catalina.filters.CorsFilter' 中的 'CorsFilter()' 无法应用于 '(org.springframework.web.cors.UrlBasedCorsConfigurationSource)'

请教下这个是啥意思啊 在网上搜了半天也找不到对应的问题(包括 Stackflow 这个问题是不是太基础了 我看别人都是这么写的啊= =

1017 次点击
所在节点    Java
4 条回复
chendy
2021-02-05 22:50:10 +08:00
编译错误?
CorsFilter 有俩
你引了 org.apache.catalina.filters 下的
需要 org.springframework.web.filter 下的
ardour
2021-02-05 23:04:27 +08:00
node 项目里我倒是经常配 cors 让服务器裸奔解决跨域. java...恕我路过一下
chenlee9876
2021-02-05 23:46:01 +08:00
@chendy 感谢老哥回复,确实是这个问题
好新手的错误啊,学习了
liian2019
2021-02-07 11:58:13 +08:00
补充下,addAllowedHeader 现在好像不支持*了,需要指明

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/751688

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX