ReactJS 发送 GET 请求,响应 302 重定向,收到 CORS 错误

IT技术 node.js reactjs go cors http-status-code-302
2021-05-11 22:44:42

这是我的堆栈:

  1. 前端服务器:Node + ReactJS ( f.com)
  2. 后端服务器(API):Golang ( b.com)

我在开发环境中执行此操作,在该环境中我使用create-react-app通过npm start命令运行我的前端服务器我想使用在sso.example.com/login. 理想情况下,无论何时向后端服务器发出未经适当授权的请求,都会响应 HTTP 302 重定向到 SSO 页面。所以顺序是:

  1. ReactJS 发送 GET 请求到 b.com/users
  2. Golang 响应 http.Redirect(" sso.example.com/login")
  3. ReactJS 应用程序收到 CORS 错误sso.example.com,我无法控制添加Access-Control-Allow-Origin:*响应标头

如何成功重定向我的 GET 请求?

1个回答

在您的情况下,在客户端的浏览器中进行重定向会更容易,因此您不会遇到 CORS 问题(因为您直接从 SSO 网站 url 访问它)。

您可以使用 react 来完成,这很复杂:使用 react router V4 以编程方式导航

或者window使用纯 JavaScript 来完成,这很容易,但可能会导致浏览历史出现问题:

window.location.href = "https://www.example.com";

https://appendto.com/2016/04/javascript-redirect-how-to-redirect-a-web-page-with-javascript/