后端解决跨域问题
方法一:在每个controller类里加上跨域注解
麻烦,每个控制器都要加注解
方法二:写一个全局配置类来处理跨域
package com.example.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 MyCorsConfig { @Bean public CorsFilter corsFilter(){ //1.添加CORS配置信息 CorsConfiguration config = new CorsConfiguration(); //1) 允许谁来访问;写*代表所有,但cookie就无法使用了 // 前端服务器(跨域域名) config.addAllowedOrigin("http://localhost:8888"); //允许任何请求头 config.addAllowedHeader("*"); //允许把cookie传过来 config.setAllowCredentials(true); // 允许的请求方式。"*": 允许所有(post、get等) config.addAllowedMethod("*"); //config.addAllowedMethod("Post"); //config.addAllowedMethod("Get"); //2.添加映射路径,我们拦截一切请求 UrlBasedCorsConfigurationSource u = new UrlBasedCorsConfigurationSource(); u.registerCorsConfiguration("/**", config); //3.返回新的CorsFilter return new CorsFilter(u); } }