我已经将我的代码简化为我可以做的最简单的express-js应用程序:
var express = require("express"),
app = express.createServer();
app.use(express.static(__dirname + '/styles'));
app.listen(3001);
我的目录是这样的:
static_file.js
/styles
default.css
然而,当我访问http://localhost:3001/styles/default.css时,我得到以下错误:
Cannot GET / styles /
default.css
我使用express 2.3.3和节点0.4.7。我做错了什么?
这个方法对我很管用
app.use(express.static(path.join(__dirname, 'public')));
app.use('/img',express.static(path.join(__dirname, 'public/images')));
app.use('/shopping-cart/javascripts',express.static(path.join(__dirname, 'public/javascripts')));
app.use('/shopping-cart/stylesheets',express.static(path.join(__dirname, 'public/stylesheets')));
app.use('/user/stylesheets',express.static(path.join(__dirname, 'public/stylesheets')));
app.use('/user/javascripts',express.static(path.join(__dirname, 'public/javascripts')));
我也有同样的问题。我已经解决了以下代码的问题:
app.use('/img',express.static(path.join(__dirname, 'public/images')));
app.use('/js',express.static(path.join(__dirname, 'public/javascripts')));
app.use('/css',express.static(path.join(__dirname, 'public/stylesheets')));
静态请求示例:
http://pruebaexpress.lite.c9.io/js/socket.io.js
我需要一个更简单的解决方案。它存在吗?