app.js:
var routes = require('./routes/index');
var users = require('./routes/users');
var mmRoute = require('./routes/MmRoute');
app.use('/logout', routes);
app.use('/users', users);
app.use('/managerMoney', mmRoute);
app.use('/mobileReg', routes);
app.use('/WXtest', routes);
原本所有的路由请求处理都在/route/index.js中,由于里面内容越来越多我想分离一下,新建了/routes/MmRoute.js文件
MmRoute.js:
var express = require('express');
var router = express.Router();
router.get('/managerMoney', function(req,res,next){
......................
});
module.exports = router;
然后运行,请求/managerMoney,报404,发现请求处理的时候感觉还是去index.js中去了,没能进到MmRoute.js中。 求解是啥原因。。。。
1)MmRoute.js 改成这样 var express = require(‘express’); var router = express.Router();
router.get(’/’, function(req,res,next){ … }); module.exports = router; 2)不然就路由访问/managerMoney/managerMoney
@Yhaojing 我觉得代码的写法没有问题
router.get('/managerMoney', function(req,res,next){
......................
});
这一段代码我只是原封不动的把这个方法从Index.js中复制到MmRoute.js中去。 我试了一下
app.use('/managerMoney', mmRoute);
这一段不变,将上面那段再放入index.js中去就可以访问到。也就是说我不管怎么改app.use里的东西,他始终去到了index.js中去了。
@youngdeer 按照你上面的写法,假设监听端口是3000 访问地址应该是http://127.0.0.1:3000/managerMoney/managerMoney 这样怎么也不会到index中看你访问的地址是否写错,