gpt4 book ai didi

spring-boot - 启用 CORS 源 graphql

转载 作者:行者123 更新时间:2023-12-05 05:08:52 27 4
gpt4 key购买 nike

我正在从事 graphQL 和 spring boot 项目。该 API 使用 graphiQL 运行良好,但是当尝试使用 Apollo vueJS 使用它时,它会导致 CORS 源错误。

我在实现 GraphQLQueryResolver 的 ProductQuery 类中使​​用 @CrossOrigin 注释,如下所示:

 @CrossOrigin(origins = "https://localhost:8081")
public List<Product> getProducts(){return this.productService.findAll(); }

这是前端项目中显示的错误: CORS origin error

感谢您的帮助。

最佳答案

对于本地开发,您可能需要一个 CorsFilter bean 来启用您的本地源:

@Configuration
@Profile("local")
public class LocalCorsConfiguration {

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

不要忘记使用 -Dspring.profiles.active=local 启动应用程序。

关于spring-boot - 启用 CORS 源 graphql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58026768/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com