什么是路由呢
在JAVA中我们请求一个地址 xxxx.do或者xxxx.action 或者是别的 都会被一个神秘的过滤器拦截 然后分配到相应的类去处理
那么在express中也是一样的 他对我们的请求做一次过滤 然后分配到不同的处理器中去处理
我们打开刚刚初始化好的 app.js
var index = require('./routes/index');
var users = require('./routes/users');
app.use('/', index);
app.use('/users', users);
我们发现了这一段代码 这就是 加载路由并且实现路由的
我们启动服务 然后打开界面
http://localhost:3000/
这时候 我们用的是/ 他就会进入 index.js中去处理相应的逻辑
如果我们是
http://localhost:3000/users
这样访问他就会到users.js的业务逻辑处理中
如果我们在 users.js中这样配置
router.get('/test', function(req, res, next) {
res.send('hello');
});
访问
http://localhost:3000/users/test
界面中则出现 hello
参数
参数的获取 直接影响到了业务逻辑的运行 我们有3种取得参数的方式
Checks route params (req.params)
Checks query string params (req.query)
Checks urlencoded body params (req.body)
举个例子
首先修改一下我们的users.js
router.get('/test', function(req, res, next) {
var obj = req.query;
console.log(obj.name);
res.send('hello');
});
然后 浏览器输入
http://localhost:3000/users/test?name=kobe&age=18
这时候我们会发现 控制台打印出来了 kobe
网友评论