express框架使用

准备开始


express 简介绍

express 是自定义对象,使用原生nodejs 写的框架

启程helloworld
  • 初始化npm init -y
  • 安装npm i express -S
  • 1:引入express第三方对象1/。
  • 2:构建一个服务器对象
  • 3:开启服务器监听端口
  • 4:处理响应
  • 在express中,保留了原生http的相关属性和函数
app.use(虚拟目录,fn)
  • 小练习

    • 选择性荤菜素菜
  • 中间件:在请求之后响应之前处理的文件。use触发事件:请求与响应之间。use() 意思:使用这个中间件

  • 用户/abc/def的请求

    • 选择性调用app.use(’/abc’,fn)的中间件
    • 但是内部req.url则去除了/abc这个暗号
  • app.use(fn)是任何请求都会触发执行的

中间件

宏观:在连个应用程序(天猫中间件)中间或者两个系统中间处理的软件
微观:在请求与响应之间执行;处理文件

中间件类别(了解)
  • 应用级中间件 app.use(事fn)
  • 路由级中间件
    • 1:获取路径级中间件
    • 2:配置路由
    • 3:加入到应用程序控制中app.use(router);
  • 内置中间件
    • 处理一些静态资源文件的返回(设置将某个目录下的资源文件向外暴露)
      • 当url匹配上我设置的目录下的子文件后,自动返回该文件
      • 加入到应用程序控制中app.use(内置中间件);
  • 第三方中间件(作用:处理post请求传来的数据)
    • 更方便的处理cookie/session,简易的解析post请求体数据
    • 在npm上下载并使用
    • 加入到应用程序控制中app.use(第三方中间件);
  • 错误处理中间件
    • 在express中统一处理错误next(err)
流 stream

流:当一个代码片段执行完毕后;会执行下一个代码片段从而形成了一个流 在express中 next()方法作用:告诉外界:当前代码执行完毕;可以执行下一个了.

路由中间件
  • 一个请求进来(总网线),分发到各自不同的处理(分多根网线给其他人)

    • 分流
  • 后端路由

    • (请求方式 + URL = 判断依据)(分流的判断依据) -> 做不同的处理(分流后的行为)
  • 路由中间的使用步骤

    • 在有服务的前提下搭建理由中间件的步骤如下

    • 1:获取路由中间件对象 let router = express.Router();

    • 2:配置路由规则 router.请求方式(URL,fn事)

      • fn中参数有req,res,next
    • 3:将router加入到应用app.use(router)

路由
  • 1531832873008
res扩展函数
res.download('./xxx.txt') // 下载文件
res.json({})  // 响应json对象
res.jsonp(数据) // 配合jsonp   要求客户端请求的时候也是jsonp的方式,  并且callback=xxx
res.redirect()  //  重定向 301是永久重定向, 302临时重定向
res.send()    // 发送字符串数据自动加content-type
res.sendFile() // 显示一个文件
res.sendStatus() // 响应状态码
  • 总结
    • res.json() 响应数据,最常用 , 返回ajax数据
    • redirect() 重定向
    • download(文件的路径) 下载 客户端访问这个路由是;就下载文件
    • 以下为响应头写法
    • 1531833969870
    • jsonp() 跨域处理
上传
  • 使用步骤
    • 1:安装第三方中间件 formidable 作用上传和编码图像和视频的服务 multer 上传文件包
    • 2: 导入模块 require(“formidable”)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值