我在users.js 配置了这样一条路由 router.get(’/’, function(req, res) { res.render(‘users/index’,{title:‘Users’}); });
在请求的时候 http://localhost:8080/users 就能显示出内容 是因为users.js路由配置的时候自动将users加入到url中了吗?
比如配置这样的一个路由条目 router.get(’/users’, function(req, res) { res.render(‘users/index’,{title:‘Users’}); }); 发送请求的时候 url :http://localhost:8080/users/users
没看出道理…围观
@DevinXian 我找到原因了 在app.js中 有这样一句话 var routes = require(’./routes/index’); var users = require(’./routes/users’);
app.use(’/’, routes); app.use(’/users’, users); 我是用express自动生成的项目 这个意思就是会去相应的目录查找路由的意思 app.use(’/users’, users); 我试着把这句写成这样 app.use(’/’, users); 这样的话 配置就对了 比如我配置 http://localhost:8080/users router.get(’/users’, function(req, res) { res.render('users/index’,{title:’Users’}); });
这样的话 我试着在users.js中加一个路由 router.get(’/new’,function(req,res){ res.render(‘users/new’,{title:‘New User’}); }); 只能通过http://localhost:8080/new 访问 不能像之前的http://localhost:8080/users/new
@icantunderstand 我说怎么多了一层路由…这个相当于内部路由分发了…