如何提供一个解耦的React前端?

时间:2016-09-15 14:36:29

标签: javascript java spring reactjs frontend

所以我正在使用React& amp;创建一个多平台应用程序。 Spring(Java)

我想让Spring后端成为一个可以被React-Native和React前端调用的REST Web服务。

我目前将我的项目分为3个子项目:后端(Spring),webapp-frontend(React webapp),移动前端(React native)

我的问题是我应该如何实际服务React webapp前端。我将在某个服务器上安装web服务,以便React代码能够点击它来进行API调用,但是就React webapp服务而言,最好是使用相同的后端服务器来服务它,还是更好地制作它一个单独的前端服务器与快递?还有,还有其他选择吗?

1 个答案:

答案 0 :(得分:2)

使用快速或与REST后端相同的服务器提供反应webapp都是有效选项。我会说,如果没有特别的理由选择快递,在弹簧后端的同一台服务器上提供它是你最好的选择。

回想一下,前端和后端仍然会解耦,只能通过REST接口进行通信,所以扩展后端服务器以托管react-webapp应该非常简单,这里有一个可以帮助的例子:React,Spring,Rest example

但是我看到有几个参数可以让你选择一个单独的服务器然后选择REST后端,例如:

  • 隔离重启和失败。如果您希望能够在不影响REST后端的情况下仅重新启动您的react-frontend,那么您可能希望在不同的服务器上运行它们。另一件需要考虑的事情是,如果您希望后端需要大量扩展,并且您需要跨多个服务器复制后端,那么如果前端在其自己的独立服务器上运行,则可能更容易。

  • 通过像express这样的node.js服务器可以实现JavaScript(React)的服务器端呈现,但我不认为可以使用Spring服务器。

  

此外,还有其他选择吗?

其他选择然后表达/春天,。其他替代方案然后托管在后端服务器或其自己的服务器上?

两种选择都有利弊,最好的取决于你的需要。