Express 框架

  1. 获取HTTP请求参数进行了简化处理

  2. 对模板引擎支持程度高,方便渲染动态HTML

  3. 提供了中间件机制有效控制HTTP请求

  4. 拥有大量第三方中间件对功能进行扩展

express的使用


初始化项目:

npm init -y

下载框架模块:

npm i express

测试代码:

const express = require(‘express’)

const app = express()

app.get(‘/’, (req, res) => {

// res.send(‘你好,Express!’)//输出文本

res.send({name:‘zss’})//输出json格式对象

})

app.listen(3000, () => {

console.log(‘Server is running at http://127.0.0.1:3000’)

})

总结以上代码:
  • 引入express框架模块

  • send 方法相较于 nodejs 原生的 end 方法更加强大 不同设置相应有的 content-tye

  • 此方法会自动根据返回的数据设置相应的响应头

请求处理的中间件


  • 中间件就是以对方法,可以接受客户端发来的请求,可以对请求作出响应,
  • 也可以将请求继续交给下一 个中间件继续处理
  • 登录就可以使用中间件进行拦截处理

在这里插入图片描述

概念:
  • 中间件主要由两部分组成:中间件方法以及请求处理函数
  • 中间件方法由express提供,负责拦截请求,请求处理函数由开发人员提供,负责处理请求
  • 其实路由就是中间件

app.get(‘/’, (req, res) => {

res.send(‘

hello,express

’) // 输出html文本

})

//匹配以get方式请求的/路由

中间件——app.use

这里以 app.use 中间件为例,讲解中间件的用法

  1. app.use 匹配所有请求方式和请求路径,可以直接传入请求处理函数

  2. app.use 第一个参数可以传入请求地址,代表无论什么请求方式,只要请求的是这个地址就接收这 个请求

基本用法:

const express = require(‘express’)

const app = express()

app.use((req, res) => {

res.send(‘你不错!’)

})

app.get(‘/’, (req, res) => {

res.send(‘我是主页’)

})

app.get(‘/new’, (req, res) => {

res.send(‘我是添加’)

})

app.listen(3000, () => {

console.log(‘Server is running at http://127.0.0.1:3000’)

})

  • app.use会接收所有传递方式中的所有路由 导致后面的路由不会继续匹配

在这里插入图片描述

在这里插入图片描述

next的用法

默认情况下,如果前面的路由已经匹配上,如果后面还有中间件,则不会执行,需要使用 next ,才会 向后执行

在这里插入图片描述

在这里插入图片描述

app.use中间件的应用


路由的保护

客户端在访问需要登录的页面时,可以先使用中间件判断用户登录状态,用户如果未登 录,则拦截请求,直接响应,禁止用户访问需要登录的页面

  1. 如果用户未登录

在这里插入图片描述

在这里插入图片描述

  1. 如果用户已经登录

在这里插入图片描述

在这里插入图片描述

网站维护公告

在所有路由的最上面定义接收所有请求的中间件,直接为客户端作出响应,网站正 在维护中

在这里插入图片描述

在这里插入图片描述

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

文章到这里就结束了,如果觉得对你有帮助可以点个赞哦,如果有需要前端校招面试题PDF完整版的朋友可以点击这里即可获取,包括答案解析。

你有帮助,可以扫码获取!!(备注:前端)**

最后

文章到这里就结束了,如果觉得对你有帮助可以点个赞哦,如果有需要前端校招面试题PDF完整版的朋友可以点击这里即可获取,包括答案解析。

[外链图片转存中…(img-tEsMCjIw-1712878727328)]

  • 26
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值