【发布时间】:2020-10-09 12:56:54
【问题描述】:
我遇到错误“从源 'http://localhost:4200' 访问 XMLHttpRequest 在 'http://localhost:4200' 已被 CORS 策略阻止:请求的资源上不存在 'Access-Control-Allow-Origin' 标头”而我在我的 Spring Boot 应用程序中添加了注释 @CrossOrigin("*")
@RestController
@RequestMapping("/products")
@CrossOrigin("*")
public class ProductController {
@Autowired
private ProductService productService;
@PostMapping(value = "/getPro", consumes = {"application/json"}, produces =
{"application/json"})
public ResponseEntity<?> getPro(@RequestBody Product product){
return this.productService.getPro(product);
}
在我的前端我有:
export class ProductService {
public productModel : Product
private baseUrl = 'http://localhost:8081';
constructor(private http:HttpClient) { }
getPro () {
return this.http.post<Product>(this.baseUrl + "/products/getPro",
JSON.stringify(this.productModel));
}
}
谁能帮帮我?
PS:我正在使用这个应用程序,就像一个 feign 客户端我的意思是实际上我正在使用 FeignClient 调用另一个应用程序!这可能是问题吗?
【问题讨论】:
-
你在使用 spring security 吗? + 为什么你在 spring "/getProductsData" 和 angular "/getPro" 中有?
-
@Roronoa_D._Law No
-
好的,那么 url "/getPro" 怎么样
-
@Roronoa_D._Law 这是一个小错误!编辑了我的帖子看看
-
失败的请求是 OPTIONS 请求吗?