跨域问题

在使用vue+axios的时候,使用get请求就可以正常使用,但是使用post请求的时候就会报这个错误。遇到这个问题,通过排查,发现是后端跨域配置的问题。
排查步骤:

  1. 首先排查前端代理的问题
  2. 关闭后端,查看请求的报错

解决方法

找到是后端的配置问题后,就将后端的配置类修改一下:

@Configuration
public class CorsConfig implements WebMvcConfigurer {

    @Bean
    public CorsFilter corsFilter() {
        //1.添加CORS配置信息
        CorsConfiguration config = new CorsConfiguration();
        //2) 允许的域,不要写*,否则cookie就无法使用了
        config.addAllowedOrigin("*");
        //3) 允许的请求方式
        config.addAllowedMethod("OPTIONS");
        config.addAllowedMethod("POST");
        config.addAllowedMethod("GET");
        // 4)允许的头信息
        config.addAllowedHeader("*");


        //初始化Cors配置源
        UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();
        //2.添加映射路径,我们拦截一切请求
        configSource.registerCorsConfiguration("/**", config);

        //3.返回CorsFilter实例.参数:cors配置源
        return new CorsFilter(configSource);
    }
} 

最后

路漫漫其修远兮

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐