启用CORS原点GraphQL
我正在进行GraphQL和Spring Boot项目。该API使用raphiQL运行良好,但当尝试使用Apollo vueJS使用它时,会导致CORS原点错误。
我在实现GraphQLQueryResolver的ProductQuery类中使用@CrossOrigin注释,如下所示:
@CrossOrigin(origins = "https://localhost:8081")
public List<Product> getProducts(){return this.productService.findAll(); }
以下是前端项目显示的错误:
感谢您的帮助。
解决方案
对我有效的是官方docs
中解释的解决方案我的configurer bean版本如下所示:
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(final CorsRegistry registry) {
registry.addMapping("/graphql/**")
.allowedOrigins(CorsConfiguration.ALL)
.allowedHeaders(CorsConfiguration.ALL)
.allowedMethods(CorsConfiguration.ALL);
}
};
}
相关文章