2012-09-11 42 views
0

我应该通过我对NodeJS是新手的事实,以及更一般地说是所有编写自己的Web服务器业务的事实来说明这一点,所以请耐心等待。根据路由在NodeJS中提供不同的静态内容

我想要实现的基本上是复制Apache的别名机制。我应该能够在配置文件中配置别名及其相应路径的列表,然后让Node根据请求提供正确的资源。

为了达到这个目的,我挑出了两个在Connect:static和route之上使用的中间件。路线主要按照预期工作,但我有一个问题,要抓住静态工作原理。具体来说,我现在的问题是:是否可以定义多个“静态”以用于连接,然后在接收请求后选择要实际为文件提供服务的哪一个?

谢谢

回答

2

您可以定义多个静态连接使用。

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

连接中间件会检查文件是否存在于第一个目录中,如果没有发现它会检查下一个目录。

但静态意味着你不应该使用req。

如果您希望根据req提供文件,那么您应该设置一个动态路由,以便根据请求提供内容。

相关问题