如何根据Express js中的请求提供不同的文件夹?

时间:2018-02-16 16:33:48

标签: javascript node.js express

我真的不知道如何实现像这样的工作

var express = require('express');
var app = express();
var server = require('http').createServer(app);

app.get('*', function(req, res){
  if(whateverYouDreamOf){
    res.redirect('http://www.subdomain.example.com');
  }else if(something){
    app.use(express.static(__dirname + '/app1'));
  }else{
    app.use(express.static(__dirname + '/app2'));
  }
} 

我需要根据很多参数提供不同的文件夹但是我被卡住了。所以一个有效的例子会很棒。

修改

此示例并未使用Mukesh Sharma方法正确提供多个文件:

路径:

           example folder
         /       |       \
        /        |        \
       /         |         \
server.js | public folder | node_modules
            /    |    \
           /     |     \
          /      |      \
index.html | style.css | game.js        

HTML / CSS / JS:https://jsfiddle.net/gmye9er5/2/

SERVER:

var express = require('express');
var app = express();
var server = require('http').createServer(app);

app.use('*', function(req, res, next){
   return express.static(__dirname + '/public')(req, res, next);
});

server.listen(3000, /*your IP*/);

1 个答案:

答案 0 :(得分:0)

希望这有用。

app.use('*', function(req, res, next){
   if(whateverYouDreamOf){
      res.redirect('http://www.subdomain.example.com');
   } else if(something){
      return express.static(__dirname + '/app1')(req, res, next);
   }else{
      return express.static(__dirname + '/app2')(req, res, next);
   }
});
相关问题