这是我在使用node.js和express的简单静态web服务器上随处可见的代码:
var express = require('express');
var app = express();
app.use(express.static(__dirname + '/public'));
app.listen(8080);我的问题是,express如何知道请求是静态页面还是动态页面?例如,为什么要从公用文件夹而不是动态模板为/index.html服务?
谢谢。
发布于 2013-12-03 00:55:05
您可以将您定义的路由看作是对URL中定义的路径的一系列检查。Express在每个检查中逐个迭代,寻找匹配;一旦找到匹配,就执行回调。
在本例中,express.static为public目录中的每个文件定义了一系列路径检查。如果您在app.use(express.static(__dirname + '/public'));代码之前使用app.get('/index.html', function(req, res) { ...,并且其中有一个index.html文件,那么它将使用静态文件而不是动态文件。
基本上就是这样。
https://stackoverflow.com/questions/20340760
复制相似问题