express是后台框架
- 帮我们解决了手动搭建服务,处理复杂的逻辑
- express 是一个函数,执行后返回的是一个监听函数
- get 要求路径必须绝对匹配到,use匹配开头即可
| 
 | 
 | 
postman 服务端APIs模拟请求工具12请求API命令行$ curl -X POST http://localhost:8080/home
express 提供的属性
| 
 | 
 | 
路径参数params
- :id 表示站位必须要有1app.get('/article/:id',callback)
listen
| 
 | 
 | 
all
| 
 | 
 | 
use 叫中间件 , 路由
use 叫中间件 , 路由
- 默认不写路径热呢请求都能进行匹配 
- 中间件在路由最上面执行,先执行中间件 ,再执行路由
- 可以写路径,还可以不写路径,不写路径默认是/
- 可以拓展属性和方法 类似于 req.path req.query
- 可以决定是否向下执行next,若果调用next则可以向下执行
- 做权限判断 
- 从中间件道路有的过程reg和res是同一个,而且中间件可以写多个123456app.use((req,res,next)=>{//next 是一个函数,如果调用则据需执行console.log('hello');res.end('66666'); //如果调用end代码不会继续执行next(); //如果要使用use扩展属性或者方法,一定调用next});
send()
- 可以自动发送json
- 可以自动处理编码类型
- 数字会转化成状态文本
用send取代end
express 提供了静态服务中间件
| 
 | 
 | 
sendFile
- 向客户端返回单一页面12res.sendFile(path.resolve('./index.html'));res.sendFile('./index.html',{root:__dirname});
静态服务中间件
app.use(express.static(路径))
动态渲染ejs
- ejs ->基于html,可以渲染动态数据 1$ npm install ejs --save
- jade 
ejs –> 后端渲染``
- <%js代码%>
- <%=渲染的数据%>123456789101112app.set('views','view'); //默认为views文件,需要手动更改app.set('view engine','html'); //更改渲染的引擎,默认为ejsapp.engine('html',require('ejs').__express); //对设置后的引擎app.get('/',(req,res)=>{res.render('index.html', //会默认去views查找//param1:要渲染的模板// 渲染时采用什么数据{data:'666666!',arr:[1,2,3]})});
body-parser 第三方form数据解析插件
| 
 | 
 |