首页 > 解决方案 > 使用 Spring Boot API REST 反应 JS

问题描述

我有一个使用 React JS 开发的前端 webapp,以及一个使用 Spring boot 构建的 rest API。当我尝试从我的 react-app 访问 API 时,出现 403 错误。我的 API Rest 部署在 tomcat 服务器中。

POST http://localhost:8080/fantasy/api/auth/signin 403
PostData.js:3 Uncaught (in promise) SyntaxError: Unexpected end of JSON input

标签: reactjsrestspring-boot

解决方案


很可能您的 ReactJs 应用程序和 Spring Boot 应用程序在不同的端口下运行,并且您没有在 Spring Rest 映射方法中配置CORS以启用来自运行 ReactJs 的 host:port 的传入请求:

@CrossOrigin(origins = "http://localhost:4200")
@GetMapping("/user")
public Greeting getUser(){}

您还可以在 Controller 本身上定义它:

@CrossOrigin(origins = "http://localhost:4200")
@RestController

您还可以为整个应用程序注册一个单独的 CORS 过滤器:参考


推荐阅读