Express 路由

路由是指如何定义应用的端点以及如何响应客户端的请求

路由是由一个URL、HTTP请求(GET、POST等)和若干个句柄组成,它的结构如下:app.METHOD(path,[callback...],callback), app是express对象的一个实例,METHOD是一个HTTP请求方法,path是服务器上的路径,callback是当路由匹配时要执行的函数。

路由方法

下面是一个基本的路由实例:

var express = require('express');
var app = express();
app.get('/',function(req,res){
     res.send('Hello world');
})
路由句柄

可以为请求提供多个回调函数,其行为类似中间件。唯一的区别是这些回调函数有可能调用next('route')方法而略过其他路由回调函数。可以利用该机制为路由定义前提条件:
例如:
混合使用函数和函数数组处理路由

var cb0 = function(req,res,next){
     console.log('cb0');
     next();
}
var cb1 = function(req,res,next){
    console.log('cb1');
    next(); 
}
app.get('/example/d',[cb0,cb1],function(req,res,next){
      console.log('response will be sent by the next function...');
      next();
}, function(req,res){
      res.send('Hello from D!');
})
响应方法

下列中响应对象(res)的方法向客户端返回响应,终结请求响应中的循环。如果在路由句柄中一个方法也不调用,来自客户端的请求会一直挂起。

  • res.download() 提示下载文件
  • res.end() 终结响应处理流程
  • res.json() 发送一个JSON格式的响应
  • res.jsonp() 发送一个支持JSONP的JSON格式的响应
  • res.redirect() 重定向请求
  • res.render() 渲染视图模板
  • res.rend() 发送各种类型的响应
  • res.sendStatus() 设置响应状态代码,并将其以字符串形式作为响应体的一部分发送。
app.route()

app.route()创建路由路径的链式路由句柄。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容