【问题标题】:Recommended way for using Express.js with React.js?将 Express.js 与 React.js 一起使用的推荐方式?
【发布时间】:2019-04-11 05:55:00
【问题描述】:

我找到了两种结合 React 和 Express 的方法:

[选项 1] ExpressJS 提供 React 静态文件

从根本上说,这里的想法是在启动服务器之前拥有预编译的 JavaScript 文件供您使用。然后在 Express 中间件中:

app.use(express.static(path.join(__dirname, '../client/build')));

然后有其他端点在服务器端执行逻辑。

[选项 2] 单独托管 React 文件

基本上,将前端和后端的整体逻辑与一台服务器解耦,仅用于提供静态 JS 文件。然后是另一个 Express 服务器,用于对数据库运行任何查询。并返回简单的 JSON 响应。

推荐的方式是哪一种?使用一种方法比另一种方法有优势吗?

【问题讨论】:

  • 我还没有听说过推荐的方法,我已经用 React 应用程序构建了几个 Express。你的应用是做什么的?你的目标是什么?
  • 我正在开发一个已经存在于生产环境中的应用程序。但我想知道他们是否采取了正确的方法。该应用程序本身有两个门户,具体取决于用户类型(想想教师/学生交换作业)。除此之外,它还有另一个应用程序,它有一个单独的前端(想想代码提交环境)。

标签: node.js reactjs express webpack microservices


【解决方案1】:

这是一个自以为是的问题,所以我只能给出一个自以为是的回答。

我个人推荐选项 1,因为当您分离前端和后端时,您会在很多地方遇到跨域资源共享 (CORS) 问题。这并不是说它不能完成,但这将是你必须处理的一件烦人的事情。

使用选项 2,您很可能还必须使用绝对 URL 路径向后端发送任何请求,这在应用程序扩展时可能很难维护。

使用选项 1,您将拥有更大的灵活性、更少的维护和更少烦人的解决方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-11
    • 1970-01-01
    • 1970-01-01
    • 2019-10-20
    • 2014-11-05
    • 2011-06-04
    • 2012-04-01
    • 1970-01-01
    相关资源
    最近更新 更多