Angular12中使用JavaSpringBoot出现无效的CORS问题。
创始人
2024-10-21 21:30:43
0

CORS是指跨域资源共享,它允许浏览器向不同源(domain,port,protocol)发出XMLHttpRequest请求。默认情况下,Java Spring Boot会禁用CORS,以防止跨站点攻击。在使用Angular 12与Java Spring Boot时,你可能会遇到CORS错误。为了解决这个问题,你需要允许特定源访问你的资源。请按照以下步骤进行操作:

  1. 在你的Java Spring Boot后端应用程序中,添加CorsFilter:

@Configuration public class CorsConfig {

@Bean
public CorsFilter corsFilter() {
    final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
    final CorsConfiguration config = new CorsConfiguration();
    config.setAllowCredentials(true);
    config.setAllowedOrigins(Arrays.asList("*"));
    config.setAllowedHeaders(Arrays.asList("*"));
    config.setAllowedMethods(Arrays.asList("OPTIONS", "HEAD", "GET", "POST", "PUT", "DELETE"));
    source.registerCorsConfiguration("/**", config);
    return new CorsFilter(source);
}

}

此代码将允许来自所有源的访问。

  1. 在Angular 12应用程序中,将HttpClient的请求参数中的“withCredentials”选项设置为true:

@Injectable() export class ApiService {

constructor(private http: HttpClient) {}

public getAllUsers(): Observable {
    const headers = new HttpHeaders().set('Content-Type', 'application/json');
    const options = { headers: headers, withCredentials: true };
    return this.http.get('http://localhost:8080/users', options);
}

}

此代码将向Java Spring Boot后端应用程序发送请求,并在请求中包括凭据。

这两个步骤都完成后,你应该能够通过Angular 12访问Java Spring Boot后端应用程序中的资源,同时避免CORS错误。

相关内容

热门资讯

六分钟方式!wepoker透视... 六分钟方式!wepoker透视版下载(透视)好像真的有辅助工具(哔哩哔哩)wepoker透视版下载辅...
8分钟操作!pokerworl... 8分钟操作!pokerworld修改器(透视)竟然真的是有辅助辅助(哔哩哔哩)pokerworld修...
第7分钟办法!wepoker有... 第7分钟办法!wepoker有什么规律(透视)一直存在有辅助下载(哔哩哔哩);1、wepoker有什...
8分钟讲义!wepoker怎么... 8分钟讲义!wepoker怎么挂飞机(透视)果然真的有辅助脚本(哔哩哔哩)1、下载好wepoker怎...
第五分钟步骤!wepoker辅... 第五分钟步骤!wepoker辅助器是真的吗(透视)一贯有辅助透视(哔哩哔哩)1、完成wepoker辅...
第7分钟操作!约局吧德州真的存... 第7分钟操作!约局吧德州真的存在透视吗(透视)确实是有辅助安装(哔哩哔哩)1、第7分钟操作!约局吧德...
第1分钟绝活!wpk私人局有透... 第1分钟绝活!wpk私人局有透视吗(透视)其实是真的有辅助插件(哔哩哔哩)在进入wpk私人局有透视吗...
四分钟操作!pokemmo免费... 四分钟操作!pokemmo免费脚本(透视)切实存在有辅助下载(哔哩哔哩)1)pokemmo免费脚本免...
第十分钟学习!wepoker有... 第十分钟学习!wepoker有透视功能吗(透视)原来是有辅助脚本(哔哩哔哩)1、用户打开应用后不用登...
第9分钟模块!德普之星透视免费... 第9分钟模块!德普之星透视免费(透视)都是是有辅助脚本(哔哩哔哩)德普之星透视免费能透视中分为三种模...