React 应用程序:使用 Node/express 作为中端代理服务器

React app: Using Node/express as middle-end proxy server

我正在为传统 RESTful API 服务器 (Golang) 构建 React 应用程序。直接的方法很容易:

React --> Redux (or any flux) --> Go server

但是我现在考虑插入 Node/express 作为中间端,所以堆栈变为:

React --> Redux --> Node/express --> Go server

我能想到的好处是:

缺点很明显,添加层后,任何最终到达后端的请求都将花费更多的时间来回。

我对架构还很陌生,很高兴知道人们是否在他们的生产项目中使用了这个额外的堆栈?体验如何?

我们正在为我们的应用程序使用类似的堆栈 React --> Redux --> Node/express OR Go server。我们牺牲了代理节点服务器的额外延迟,以便能够连接 SSO 服务器(不同于我们的 GO 服务器),但也可以进行服务器端渲染。

我们选择这个的原因是因为我们是一个面向 public 的网站,允许用户将帖子分享到 Facebook。如果我们没有服务器端渲染,我们将需要支付昂贵的服务费用,例如 Prerender.io.

我唯一会提议(我们确实这样做了)是通过节点服务器进行一些调用,例如渲染或与 SSO 相关的东西,但允许一些直接的 API 请求直接转到 GO 服务器.除非你需要对 GO 和 React 之间的每个请求做一些事情,否则我建议这样做以防止一些开销。