express学习(一,中间件,错误处理

创建express服务器
` const express = require('express')
const app = express()
const port = 3000
app.get('/', (req, res) => res.send('Hello World!'))1.

app.get('/hello',(req,res)=>
res.send("你好")
)
app.listen(port, () => console.log("Example app listening on port port!")`
send方法

  1. 自动检测响应内容的类型
  2. 自动设置状态码
  3. 自动设置响应的内容类型及编码
    中间件
    就是一堆方法,接收客户端的请求,做出响应,或者交个下一个中间件。
    app.get(req,res,next),app.post(req,res,next)
    next:交给下一个
    请求匹配到一次后,不会向下匹配,使用next()向下匹配
    注意:需要先在get方法中声明next()
    app.use()方法
    匹配所有的路径app.use((req,res,next)=>{})
    匹配某一个路径app.use("/router",(req,res,next)=>{})
    next()
    如果不适用next(),在完成请求当前,不会向下继续请求

路由保护
app.use("/admin",(req,res,next)=>{ if(user.vip==true){ next() } else{ res.send("你还不是会员") } }) app.get("/admin",(req,res)=>{ res.send("你已经是会员") })
网站维护(拦截功能)更改状态码
app.use((req,res,next)=>{ res.status(404).send("当前网站正在维护") })

错误处理中间件
(err,req,res,next)
err.message:错误信息 (只能捕获同步代码)
触发错误处理next(err)中间件
app.use(err)
捕获错误
try{
}
catch(){
}

posted @ 2021-02-24 20:29  MyKai  阅读(268)  评论(0)    收藏  举报