express三大核心

一个请求必需要给一个响应。

有很多响应方法

res.render 渲染 view + data = html

res.json 返回json格式的数据 前后端数据交换时 尽量用json。json对象有属性没方法。

res.end() 表示请求结束。

express 三大利器 路由 中间件 视图引擎

  • 使用app.use挂载中间件
  • route 路由处理 Router是express内置的一个中间件
  • 视图引擎 不是必须的,也是自己去渲染视图。

http方法有很多 比如 get post path put delete patch

使用路由时,相同的路径,可以使用不同的http方法来做不同的功能,以精简路由。

比如:
GET /posts 获取文章
POST /posts 创建文章
DELETE /posts 删除文章
PUT /posts 修改文章
PATCH /posts 修改文章

中间件的截流

一定是有目的的。

比如 服务升级时 截流 后面的中间件就相当于废代码 慢慢升级就好了

router.get('/',function(req,res,next){
res.send('网站正在升级,coming soon');
});

视图引擎,是对ejs的一个封装,这个不是必须的,我们自己也可以去渲染

但是比较麻烦。比如:使用ejs读取文件内容并使用数据渲染

res.locals

ejs不仅可以访问到渲染过去的数据,还可以获取res.locals对象里的数据。

res.locals很重要的,所有页面共同的信息可以放进来。

比如res.locals.marked = markdown ejs就可以访问这个变量,给页面提供了渲染md的能力。

但这不是个好例子 md一般在服务端渲染后直接传给前端页面,这里是为了说明,是把东西放入locals中,会解决很多问题。

你可能感兴趣的:(express三大核心)