首页 > 开发 > NodeJS > 正文

express 4.x 如何在不同js文件中处理router请求

2017-09-08 17:17:50  来源:网友分享

users.js

var express = require('express');var router = express.Router();router.get('/users', function(req, res, next) {  res.send('Test')});module.exports = router;

index.js

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

app.js

...var index = require('./routes/index');app.use('/', index);...

这里我只列出部分代码,但无论我是在index.js中引用user.js还是在app.js中引用,处理/users这个网络请求都是404,所以我想问一下是不是因为一个项目中只能建立一个路由啊,然后另一个问题就是app.use()这个函数的参数分别代表了什么,谢谢各位大神

解决方案

在入口文件里面,比如app.js,一般都是在这个里面注册中间件等等,导出app,然后在你需要用到的路由文件里面直接引入这个app,比如app.get("/hello", function() {})

use函数有两个参数,第一个参数一般是匹配一个路由的,第二个函数是注册中间件的,如果没有第一个参数,那么第二个函数将会应用到每一次请求里面。