node-express模块
什么是express:
地址:https://www.expressjs.com.cn/
express安装:npm i express -D
区别创建web服务器
web服务器express监听get post请求
get请求:
getpost请求
postsend()方法 返回请求
send()获取url中的参数:req.query中
req.query获取url中动态参数:req.params
动态express静态资源托管 express.static()
把目录所有文件为静态资源
static```js
const express = require('express');
const app = express();
// 文件夹路径
app.use(express.static('./PluginVideo'))
// 托管多个多次调用static
// 启动服务器
app.listen(80, () => {
console.log('启动成功:http://127.0.0.1')
})
```
挂载路径前缀app.use('',express.static())
前缀nodemon监听代码改动
安装express路由
const express=requier('express');
const app=express();
最简单的用法app.get() app.post():不推荐使用
通过
路由 匹配过程模块化路由
将路由处理为单独模块
步骤express.Ruoter()创建路由对象
moudel.exports共享对象
app.use注册对象
创建:
// 模块化路由对象
const experss = require('experss');
const router = experss.Router()
// router挂载路由
router.get('/user', (req, res) => {
console.log('成功')
res.send({
name: '成功'
})
})
// 共享
module.exports = router
导入注册模块:
app.use:用来注册中间件的
const express = require('express');
const app = express();
// 引入路由模块
const router = require('./router');
// 注册模块路由
app.use(router)
// 启动服务器
app.listen(80, () => {
console.log('服务器启动:http://127.0.0.1')
})
为路由模块添加统一的访问前缀:app.use(‘前缀’,路由);
中间件:
中间件中间件的调用流程:
流程express中间件的格式:
中间件函数必须包含nextnext()的作用:是实现多个中间件函数的关键;
关键1:定义中间件函数:
创建全局生效的中间件:使用use注册就行
注册全局定义全局中间件的简化方式:app.use((req,res,next)=>{});
中间件的作用:
作用定义多个连续中间件:
定义局部调用中间件:
app.get('/use','中间件函数',(req,res)=>{ })
post也一样定义多个局部中间件函数:
多个注意事项:
中间件必须放在路由前面;客户端可以多个中间件;不能忘记一点调用next();
写完next后别再写代码了;连续调用多个中间件的时候中间件req,res可以共享;
中间件分类:
分类路由级别中间件:
绑定到router上错误级别中间件:
错误级别中间件必须放在所有路由之后;
捕捉错误(4个参数)express内置中间件:
内置中间件experss.json
experss.json experss.urlencoded第三方中间件:
第三方自定义中间件:
自定义使用req.on()监听事件
解析字符串格式使用experss写接口:
步骤创建路由模块
路由模块 编写get方法解决接口跨域问题:
解决CORS解决方法:
一定要在路由之前挂载注册
步骤 注意点