【发布时间】:2020-11-24 09:49:38
【问题描述】:
Express 的express.static() 中间件的documentation 声明:
要提供静态文件,例如图像、CSS 文件和 JavaScript 文件,请使用 Express 中的 express.static 内置中间件函数。
似乎包含了动态 React 应用程序的 JS 文件,因为即使 some_build_dir 是前端 React 应用程序,express.static("some_build_dir") 似乎也可以工作。
然而,使用 JS 动态生成 web 内容的 React 应用程序似乎很自然应该被视为 dynamic,而不是 static,所以我在这里缺少一些东西.
问:如果连 React 应用程序的源文件都不符合条件,Express 实际上会考虑“非静态”或“动态”哪些类型的东西?
【问题讨论】:
-
“静态”基本上是指文件系统上的实际文件。客户端发生的事情无关紧要。
-
@GuyIncognito 所以,为了确认一下,Express 上下文中“静态”的定义与短语“静态网页”中的“静态”不同,对吗?
-
是的。 Express 不知道也不关心客户如何处理它发送到那里的东西。
-
对于服务器,静态文件是那些未被服务器“解析”的文件,例如javascript、样式表、图像、文档等。Express 不在您的构建目录中运行 javascript。与服务器 javascript 文件中的 javascript 不同,Express 直接将其提供给客户端。我知道一开始会令人困惑,因此 +1 以反对投票。
标签: javascript node.js reactjs express middleware