gpt4 book ai didi

node.js - Nodejs Express router.get ('/' ) 在 users.js 中

转载 作者:太空宇宙 更新时间:2023-11-03 23:21:40 25 4
gpt4 key购买 nike

我仍在尝试学习 NodeJs,但我遇到了在 Express 中遇到的这条路径。当我使用 Express 创建应用程序时,我注意到在 app.js 中我有以下代码行 var index = require('./routes/index');
var users = require('./routes/users');
app.use('/', 索引);
app.use('/users', users);

users.js中我已经配置了

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

/* GET users listing. */
router.get('/', function(req, res, next) {
res.send('respond with a resource');
});

module.exports = router;

我真的不明白为什么它在 users.js router.get('/') 而不是 router.get('/users') 中是在app.js中指定的吗?有人可以解释一下这种情况下发生了什么吗?据我在 app.js 中的理解,它表示每当有人尝试访问指定的路由('/users')时,就可以在浏览器中说localhost:3000/users,让 users 变量中所需的文件来处理它。

最佳答案

如果您正在使用路线,则快速应用程序会自动进行。以下是来自express.js 网站的示例:

在我们的路由器文件中,我们有:

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

// middleware that is specific to this router
router.use(function timeLog (req, res, next) {
console.log('Time: ', Date.now())
next()
})
// define the home page route
router.get('/', function (req, res) {
res.send('Birds home page')
})
// define the about route
router.get('/about', function (req, res) {
res.send('About birds')
})

module.exports = router

然后在我们的主文件中我们有我们的服务器等,我们在路由器中加载:

var birds = require('./birds')

// ...

app.use('/birds', birds)

仅当请求 /birds 网址时,才会访问路由器应用中的这些路由。路由器中的所有路由现在都会自动以 /birds

开头

所以这个代码在快速路由器中:

// im code in the birds router
router.get('/about', function (req, res) {
res.send('About birds')
})

仅当有人向 /birds/about 网址发出 get 请求时才会执行。

更多信息请参见 the official express.js docs

关于node.js - Nodejs Express router.get ('/' ) 在 users.js 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48961804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com