javascript - 根据 URL 重定向到不同的 Controller

标签 javascript node.js

好的,我正在尝试根据 URL 将请求重定向到不同的 Controller 。

我的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 }

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

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

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

非常简短和甜蜜,但是当我运行node server.js时,我收到以下错误消息:Router.use()需要中间件函数,但现在得到了未定义我已经浏览过Router Use但我有点困惑(新手)我目前没有任何中间件。

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

最佳答案

服务器.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')
})

登录 Controller .js

const express = require('express')

var router = express.Router()

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

module.exports = router

然后,如果您访问 http://localhost:3000/test 将获得输出“inside logincontroller”

关于javascript - 根据 URL 重定向到不同的 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45433756/

相关文章:

javascript - 循环nodejs中的setInterval

javascript - 导轨 : how to cache css and js files when using this method

javascript - Meteor/MongoDB 看到可用的发布字段?

javascript - Node 类型错误: root path required

javascript - 为什么 ref.getCollections() 不被识别为函数?

javascript - 如何在 Node.js 中处理 fs.createReadStream() 的错误?

javascript - 使用 Ajax 和 PHP 将用户 ID 上传到数据库

javascript - 将 jquery 对象数组转换为 html

javascript - 用函数在js中写html

javascript - 何时使用 `parent` 以及何时使用 `root` 作为 GraphQL 解析器函数中的第一个参数