nodejs学习记录--express和路由

1. 了解Express

Express是基于Node.js平台,快速、开放、极简的Web开发框架。
通俗理解:Express的作用和Node.js内置的http模块类似,是专门用于创建web服务器的。
本质上就是一个npm的第三方包,提供了快速创建Web服务器的便捷方法。
express是基于http内置模块进一步封装出来的,使用Express可以方便快速的创建Web网站服务器或API接口服务器。

Express的中文官网:http://www.expressjs.com.cn/.

2. Express使用

2.1 安装

输入命令:

npm i express@4.17.1

2.2 创建一个基本的web服务器

//1.导入express
const express = require('express')
//2.创建web服务器
const app = express()
//3.启动web服务器
app.listen(80 , () => {
console.log('express server running')
})

2.3 监听GET请求

通过app.get()方法监听get请求,语法:

app.get('请求url' , function(req,res){ })

2.4 监听POST请求

通过app.post()方法监听get请求,语法:

app.post('请求url' , function(req,res){ })

2.5 把内容响应给客户端

通过res.send()方法:

app.post('请求url' , function(req,res){
 	res.send('请求成功')
 })

2.6 获取URL中携带的查询参数

通过req.query对象,可以访问到客户端通过查询字符串的形式,发送到服务器的参数:
在这里插入图片描述

2.7 获取URL中的动态参数

通过req.params对象,可以访问到URL中,通过:匹配到的动态参数:
在这里插入图片描述

3.托管静态资源

3.1 express.static()

在这里插入图片描述

3.2 托管多个静态资源目录

在这里插入图片描述

3.3 挂载路径前缀

在这里插入图片描述

4.nodemon

在这里插入图片描述

4.1 安装nodemon

在终端中运行命令:

npm install -g nodemon

4.2 使用nodemon

在这里插入图片描述

5. Express路由

在express中,路由指的是客户端的请求与服务器处理函数之间的映射关系。
Express中的路由分3部分组成,分别为请求的类型、请求的URL地址、处理函数,格式如下:

app.METHOD(PATH, HANDLER)

Express中的路由的例子
在这里插入图片描述

5.1 路由的匹配过程

在这里插入图片描述

5.2 路由的使用

5.2.1 最简单的方法

在这里插入图片描述

5.2.2 模块化路由

为方便对路由进行模块化管理,Express不建议将路由直接挂在到app中,推荐将路由抽离为单独的模块。
在这里插入图片描述

5.2.3 创建路由模块

创建路由模块 router.js

// 1.导入express
const express = require('express')
// 2.创建路由对象
const router = express.Router()
// 3.挂载具体路由
router.get('/user/list', (req,res) => {
  res.send('get user list')
})
router.post('/user/add', (req,res) => {
  res.send('add new user')
})
// 4.向外导出路由对象
module.exports = router

5.2.4 注册路由模块

index.js文件中

// 创建基本服务器
const express = require('express')
const app = express()

// 1. 导入路由模块
const router = require('./router')
// 2.注册路由模块
app.use(router)

app.listen(80 , () => {
  console.log('http://127.0.0.1')
})

app.use()函数的作用就是用来注册全局中间件的

5.2.5 为路由模块添加前缀

在上面的代码中注册路由模块时添加前缀,如:

app.use(router)  =>  app.use('/api' , router)

此时访问路由时前面需要添加’/api’前缀。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

别出声~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值