重定向到依赖于Url的不同控制器

时间:2017-08-01 09:17:41

标签: javascript node.js

好的,我正在尝试根据URL将请求重定向到其他控制器。

我的server.js

const express = require('express');

var app = express();

var router = express.Router();

// controllers
var { loginController } = require('./controller/loginController');

// Specify routes
app.use('/test', loginController);


app.listen(3000, () => {
    console.log('started on port 3000');
});

module.exports = { app }

现在,如果网址是/ test,那么我想将请求重定向到loginController,在loginController内我有以下内容:

const express = require('express');
var router = express.Router();

router.get('/', (req, res) => {
   res.send('inside logincontroller');
});

非常简短和甜蜜,但是当我运行node server.js时,我收到以下错误消息:Router.use() requires middleware function but got a undefined现在我已经浏览了Router Use但我有点困惑(新手)我目前没有任何中间件。

当网址为loginController时,有人能够向我解释如何将请求重定向到/test

1 个答案:

答案 0 :(得分:1)

server.js

const express = require('express')

// Controllers
var loginController = require('./controller/loginController')

var app = express()

// Specify routes
app.use('/test', loginController)

app.listen(3000, () => {
  console.log('started on port 3000')
})

loginController.js

const express = require('express')

var router = express.Router()

router.get('/', (req, res) => {
  res.send('inside logincontroller')
})

module.exports = router

然后,如果您访问http://localhost:3000/test,则会在logincontroller内获得输出'

相关问题