我有一台服务器,它通过中间件路由几乎所有内容,以检查您是否已登录,但这仅适用于路由。我还希望它可以处理public
目录中的静态文件。我该怎么做呢?
更新:最好不要担心保护/public
文件夹中的内容,因为 express 提供了一项res.download(...)
功能。Express.JS GitHub 页面上的示例
我有一台服务器,它通过中间件路由几乎所有内容,以检查您是否已登录,但这仅适用于路由。我还希望它可以处理public
目录中的静态文件。我该怎么做呢?
更新:最好不要担心保护/public
文件夹中的内容,因为 express 提供了一项res.download(...)
功能。Express.JS GitHub 页面上的示例
澄清静态文件也是服务器通过使用express.static
中间件表达。理论上,您可以在它之前包含中间件来处理安全性。除了静态中间件的想法之外,您只能使文件夹从publicpublic
开始静态可用。
你可以在这里找到定义的静态。您可以重写它以允许您将中间件注入其中。
或者您可以自己编写一个简单的静态文件路由器。
您是否尝试过在静态中间件之前将自己的安全日志注入中间件。
app.use(security);
app.use(express.static(dirname + '/public'));