nodejs-Express框架

唐兴贤
2023-12-01

一、express框架

1.创建web服务器

const express=require('express');
//console.log(express);
//创建web服务器
const app=express();
//设置端口
const port=8888;

2、路由

  • 根据请求的方法和请求的URL来作出特定的响应,就是处理特定的请求
  • 路由包含三部分:请求的方法、请求的URL、回调函数

1. res 响应的对象

  • res.seng() 设置响应的内容并发送
  • res.redirect() 设置响应的重定向并发送
  • res.sendFile() 设置响应的文件并发送
传递的方式格式接收的方式
查询字符串可见req.query 格式为对象
流的方式不可见通过事件
req.on(‘data’,(thunk)={
chunk接收的分段数据
格式为buffer,
<转字符串为查询字符串
需要使用查询字符串模块解析为对象
})
路由传参/package/mysqlapp.get(’/package/:pname’,(req,res)=>{
//形参
req.params 接收数据,格式为对象
})

3、路由器

//创建路由器对象
const r=express.Router();
//往路由器对象下添加路由
r.get('/list',(req,res)=>{})
//导出路由器对象
module.exports=r;
//在web服务器下引入并挂载
app.use('添加的前缀',挂载的路由器);

项目实战

  • 主文件app.js
  • 用户路由user.js
  • app.js
//1.创建web服务器
const express=require( 'express' );
const bodyParser=require( 'body-parser' );
const mysql=require( 'mysql' );
//2.引入用户路由哭
const userRouter=require( './router/user.js' )
const app=express();
app.listen( 8080 );
//3.将用户路由器挡挂载到web服务器下,同时添加前缀/v1/users
app.use( '/v1/users',userRouter );
  • user.js
const express=require('express');
//1.创建路由器对象
const r=express.Router();
const querystring=require('querystring');
//2.用户注册路由(post,/reg)
r.post('/reg',(req,res)=>{
	res.send('注册成功');
});
//导出路由器对象
module.exports=r;

4、中间件

1、自定义中间件

2、路由级中间件

3、内置中间件

4、第三方中间件

  • body-parse 转换数据流为字符串
  • compression 压缩模块
  • cors 跨域模块
  • multer 文件上传.

5、错误处理中间件

5、mysql模块

6、接口(api)

数据接口:后端给前端提供的资源
REST:是一种接口风格,行业内认同的风格
RESTful:是基于REST风格的接口

1.URL

  1. http://127.0.0.1:8080/v1/emps/3

v1 版本号 emps 资源名称 3传递的数据

  1. http://127.0.0.1:8080/v1/users/login

login 对资源的特殊操作

2.请求方法

对资源的操作

  • post 新建资源(增)
  • delete 删除资源(删)
  • put 修改资源(改)
  • get 获取资源(查)

3.过滤数据

搜索关键字,分页中的页码都 属于过滤数据

  • http://127.0.0.1:8080/v1/emps?pnu=1&count=10

http://127.0.0.1:8080/v1/emps?sex=0`

  • 查询字符串过滤数据

4.返回结果

  • 状态码:人为规定,后端设定
  • 对象/数组(json )
 类似资料: