设为首页 加入收藏

TOP

可能是全网最详细的express--middleware(二)
2019-09-17 18:59:26 】 浏览:50
Tags:可能 全网 详细 express--middleware
const fs = require('fs') const app = express() app.get('/', (req, res, next) => { fs.readFile('./index.html', (err, date) => { if (err) { // 如果异步读取文件错误,把错误对象传给next() return next(err) } // 成功,发送读取后的数据,浏览器渲染页面 res.send(data) }) }) // 配置一个全局错误处理中间件,注意这里接收四个参数,一个都不能少,否则会出错 app.use((err, req, res, next) => { // err参数为前面next()方法接收到的错误对象 res.status(500).send(err.message) })

通过配置一个全局错误处理中间件,我们可以统一处理请求发送错误时服务端的响应。这里一定要给错误处理中间件的处理函数 四个参数, 切记。在应用程序级别的中间件 app.get() 中,当异步读取文件失败时,记得要把错误对象传递给next()方法 。通过这样,一旦 index.html 文件丢失,请求则会进入错误处理中间件,发送错误对象的具体消息给到浏览器响应。

  1. Built-in middleware(内置中间件)

express为我们也提供了一些内置中间件,比如常见的开放静态资源: express.static()等。

const express = require('express')

const app = express()

// 开放公共资源
app.use('/public/', express.static('./public'))
  1. Third-party middleware(第三方中间件)

同样,我们也可以使用别人封装好的第三方中间件,第三方中间件都是一个个第三方包,所以使用前需要我们单独下载到项目中。之前的 body-parser 中间件,就是用来解析 post 请求体的数据,还有常见的像 express-session 中间件, cookie-parser用来获取请求的cookie 数据等。第三方中间件具体可以查看 express 官方 API,这里就不再一一罗列 。

官方推荐的第三方中间件:第三方中间件

写在后面

因为文章内容是自己空闲时间编写,如果您发现有哪些错误可以在GitHub上提交 issue ,也可以在留言区发表评论,这样可以方便于后来的同学学习,谢谢啦~

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇mvvm实现一个简单的vue 下一篇快速上手 Echarts

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目