认识守卫-以及简单的示例和装饰器
认识守卫-以及简单的示例
- 什么是守卫
- 生成一个守卫
- 引入使用
- UseGuards
- providers
- 应用全局引入
- 编写逻辑
- 思考
- 生成一个装饰器
- 代码进度
什么是守卫
官方的介绍如下 文档
警卫只有一个职责。它们根据运行时存在的某些条件(如权限、角色、ACL等)来确定给定的请求是否将由路由处理程序处理。这通常被称为授权。授权(及其通常与之协作的表亲身份验证)通常由传统Express应用程序中的中间件处理。中间件是身份验证的一个不错的选择,因为令牌验证和将属性附加到请求对象等与特定的路由上下文(及其元数据)没有强连接。
简单来说,把请求当个人,controller当个小区,那守卫就是小区保安,我们想要请求打进去进行处理,首先要向保安证明身份,不然保安就不让你进去。证明身份后,就可以进去,如果有多个守卫呢,好比当时做核酸,多重鉴定。那我们就来实现一个简单的来了解。
下面的请求示例使用的是apifox,可以下一个,或者使用别的,如postman等等。
生成一个守卫
请出老朋友 nest g
和之前一样