Express server静态文件夹不提供文件

时间:2016-09-16 21:07:46

标签: javascript node.js express

在我的应用程序中,有一些我想要提供给客户端的静态文件,但服务器没有响应。

app.use(express.static(__dirname, '/public'));

这是我无法单独解决的相关代码。

2 个答案:

答案 0 :(得分:1)

问题在于逗号 - ,__dirname之间的/public

你应该改为:

app.use(express.static(__dirname + '/public'));

Uni_Nake建议在公用文件夹

之前使用前缀
app.use('/public', express.static(__dirname + '/public'));

答案 1 :(得分:0)

看起来app.useexpress.static的使用被搞砸了。您拥有的代码将通过快递服务于/下的整个当前目录,我怀疑这是您想要的。

以下内容将使/public中的所有内容都可用/public

app.use('/public', express.static(__dirname + '/public'));

即。如果您/public/banner.gif,您将能够通过以下方式访问它:

http://localhost:{port}/pubic/banner.gif

或者您可以使用以下内容来省略http请求中的/public

app.use(express.static(__dirname + '/public'));

即。如果您/public/banner.gif,您将能够通过以下方式访问它:

http://localhost:{port}/banner.gif