
Nest.js
文章平均质量分 51
Nestjs
小满zs
我是真菜
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
小满nestjs(第二十七章 nestjs typeOrm关系)
在我们开始的过程中,肯定不会把数据存在一个表里面,我们会进行分表,把数据分开存,然后通过关联关系,联合查询。如果需要联合查询需要增加 relations 注意看上面的代码。对于用户来说一个用户可以拥有多个tag 他们的关系是一对多。第一个参数是个函数返回关联的类 所以在user表关联tag。对于tag来说他们是多个tag指定单个用户 所以是。沿用上一章的代码增加Controller 增加。前端代码还是复用上一章的 增加了一个添加Tag。Modal 需要关联tag表。typeOrm 文档。原创 2022-12-20 01:56:35 · 10677 阅读 · 15 评论 -
小满nestjs(第二十六章 nestjs 第一个CURD)
来了来了他来了 我们学了这么久的第一个CURDaxios 接口定义后端Nestjsservice1.引入 InjectRepository typeOrm 依赖注入 接受一个实体2.引入类型 Repository 接受实体泛型3.Like 用于模糊查询4.save 保存 find 查询 update 更新 delete 删除原创 2022-10-29 19:10:07 · 13383 阅读 · 19 评论 -
小满nestjs(第二十五章 nestjs 实体)
什么是实体实体是一个映射到数据库表的类。你可以通过定义一个新类来创建一个实体,并用@Entity()原创 2022-10-09 01:36:12 · 10684 阅读 · 3 评论 -
小满nestjs(第二十四章 nestjs 连接数据库)
Nestjs 集成数据库,由于企业用的Mysql 居多 我们就用Nestjs 连接 Mysql。原创 2022-10-08 04:17:13 · 11801 阅读 · 10 评论 -
小满nestjs(第二十三章 nestjs swagger接口文档)
swagger 用于提供给前端接口文档原创 2022-10-06 13:29:07 · 8770 阅读 · 4 评论 -
小满nestjs(第二十二章 nestjs 自定义装饰器)
在Nestjs 中我们使用了大量装饰器 decorator ,所以Nestjs 也允许我们去自定义装饰器。原创 2022-10-06 02:36:01 · 6125 阅读 · 0 评论 -
小满nestjs(第二十一章 nestjs 守卫)
守卫有一个单独的责任。它们根据运行时出现的某些条件(例如权限,角色,访问控制列表等)来确定给定的请求是否由路由处理程序处理。guard 使用 Reflector 反射读取 setMetaData的值 去做判断这边例子是从url 判断有没有admin权限。应用程序中,通常由中间件处理授权(以及认证)。中间件是身份验证的良好选择,因为诸如。tips 守卫在每个中间件之后执行,但在任何拦截器或管道之前执行。第一个参数为key,第二个参数自定义我们的例子是数组存放的权限。SetMetadata 装饰器。原创 2022-10-05 19:59:18 · 6567 阅读 · 2 评论 -
小满nestjs(第二十章 nestjs 爬虫)
其实爬虫是一个对计算机综合能力要求比较高的技术活。首先是要对网络协议尤其是http协议有基本的了解, 能够分析网站的数据请求响应。学会使用一些工具,简单的情况使用 chrome devtools 的 network 面板就够了。原创 2022-10-04 04:02:37 · 7532 阅读 · 2 评论 -
小满nestjs(第十九章 nestjs 管道验证DTO)
value 就是 前端传过来的数据 metaData 就是元数据 通过 metatype 可以去实例化这个类实例化DTO通过 validate 验证 DTO 返回一个promise 的错误信息 如果有错误抛出。原创 2022-09-24 14:54:14 · 8040 阅读 · 11 评论 -
小满nestjs(第十八章 nestjs 管道转换)
管道 可以做两件事1.转换,可以将前端传入的数据转成成我们需要的数据2.验证 类似于前端的rules 配置验证规则我们先来讲一下转换 Nestjs 提供了八个内置转换API。原创 2022-09-24 13:26:40 · 5501 阅读 · 4 评论 -
小满nestjs(第十七章 nestjs 异常拦截器)
类实例的异常,并为它们设置自定义响应逻辑。为此,我们需要访问底层平台。上一章我们讲了全局响应拦截,这一章我们来讲一下全局异常拦截器。让我们创建一个异常过滤器,它负责捕获作为。common下面新建filter.ts。并将其包含在日志信息中。对象直接控制发送的响应。原创 2022-09-19 23:00:39 · 6073 阅读 · 3 评论 -
小满nestjs(第十六章 nestjs 响应拦截器)
拦截器具有一系列有用的功能,这些功能受面向切面编程(AOP)技术的启发。我们想给他返回一个标准的json 格式 就要给我们的数据做一个全局format。我们现在没有给我们的Nestjs 规范返回给前端的格式现在比较乱。新建common 文件夹 创建 response.ts。Nest Js 配合 Rxjs 格式化数据。在main.ts 注册。原创 2022-09-18 12:59:33 · 7071 阅读 · 6 评论 -
小满nestjs(第十五章 nestjs 和 RxJs)
Rxjs 中文文档。原创 2022-09-18 01:17:45 · 6466 阅读 · 2 评论 -
小满nestjs(第十四章 nestjs 下载图片)
下载文件的方式有好多种。原创 2022-09-15 22:23:05 · 5658 阅读 · 9 评论 -
小满nestjs(第十三章 nestjs 上传图片-静态目录)
multer @types/multer 这两个需要安装在upload Module 使用MulterModule register注册存放图片的目录需要用到 multer 的 diskStorage 设置存放目录 extname 用来读取文件后缀 filename给文件重新命名。原创 2022-09-11 17:41:51 · 9519 阅读 · 6 评论 -
小满nestjs(第十二章 nestjs 中间件)
使用方法 在模块里面 实现 configure 返回一个消费者 consumer 通过 apply 注册中间件 通过forRoutes 指定 Controller 路由。要求我们实现use 函数 返回 req res next 参数 如果不调用next 程序将被挂起。也可以指定 拦截的方法 比如拦截GET POST 等 forRoutes 使用对象配置。注意全局中间件只能使用函数模式 案例可以做白名单拦截之类的。中间件函数可以访问请求和响应对象。中间件是在路由处理程序。原创 2022-09-07 21:21:36 · 7235 阅读 · 2 评论 -
小满nestjs(第十一章 nestjs 模块)
每个 Nest 应用程序至少有一个模块,即根模块。事实上,根模块可能是应用程序中唯一的模块,特别是当应用程序很小时,但是对于大型程序来说这是没有意义的。在大多数情况下,您将拥有多个模块,每个模块都有一组紧密相关的。例如 user 的 Service 想暴露给 其他模块使用就可以使用exports 导出该服务。由于App.modules 已经引入过该模块 就可以直接使用user 模块的 Service。动态模块主要就是为了给模块传递参数 可以给该模块添加一个静态方法 用来接受参数。原创 2022-09-06 02:03:08 · 7484 阅读 · 0 评论 -
小满nestjs(第十章 nestjs 提供者)
第一种用法就是一个语法糖其实他的全称是这样的@Module({}]})自定义名称之后 需要用对应的Inject 取 不然会找不到的通过 useValue@Module({}, {}]})原创 2022-08-24 01:02:18 · 8048 阅读 · 3 评论 -
小满nestjs(第九章 nestjs Session)
session 是服务器 为每个用户的浏览器创建的一个会话对象 这个session 会记录到 浏览器的 cookie 用来区分用户。我们使用的是nestjs 默认框架express 他也支持express 的插件 所以我们就可以安装express的session。然后在main.ts 引入 通过app.use 注册session。前端 vue3 ts element-plus fetch。我们可以看到 session 已经存到了浏览器。需要智能提示可以装一个声明依赖。跨域我用了本地dev 解决的。....原创 2022-08-14 14:16:11 · 10246 阅读 · 21 评论 -
小满nestjs(第八章 nestjs 控制器)
可以使用Request装饰器 或者 Param 装饰器 跟express 完全一样。可以使用Request装饰器 或者 Query 装饰器 跟express 完全一样。可以使用Request装饰器 或者 Body 装饰器 跟express 完全一样。也可以使用Query 直接获取 不需要在通过req.query 了。nestjs 提供了方法参数装饰器 用来帮助我们快速获取参数 如下。使用 HttpCode 装饰器 控制接口返回的状态码。我在调试工具随便加了一个cookie。或者直接使用Body 装饰器。..原创 2022-08-13 21:24:21 · 8354 阅读 · 4 评论 -
小满nestjs(第七章 RESTful 风格设计)
RESTful 是一种风格,在RESTful中,一切都被认为是资源,每个资源有对应的URL标识.不是标准也不是协议,只是一种风格。当然你也可以不按照他的风格去写。原创 2022-08-10 00:32:46 · 7303 阅读 · 2 评论 -
小满nestjs(第六章 nestjs cli 常用命令)
帮我们更新资源,安装一些额外的插件,后续再次使用就不会更新了。第一次使用这个命令的时候,除了生成文件之外还会自动使用。生成了一套标准的CURD 模板。他的命令和angular很像。案例生成一个用户模块。...原创 2022-08-08 00:11:49 · 10401 阅读 · 0 评论 -
小满nestjs(第五章 nestjs cli)
1.main.ts 入口文件主文件 类似于vue 的main.ts通过 NestFactory.create(AppModule) 创建一个app 就是类似于绑定一个根组件App.vue监听一个端口}2.Controller.ts 控制器你可以理解成vue 的路由private readonly appService: AppService 这一行代码就是依赖注入不需要实例化 appService 它内部会自己实例化的我们主需要放上去就可以了@Get()}}...原创 2022-08-07 17:42:13 · 7862 阅读 · 0 评论 -
小满nestjs(第四章 前置知识装饰器-实现一个GET请求)
定义 descriptor 的类型 通过 descriptor描述符里面的value 把axios的结果返回给当前使用装饰器的函数。安装依赖npm install axios -S。完整代码 接口可以直接用允许跨越的。定义控制器 Controller。应为装饰器默认会塞入一些参数。这时候需要使用装饰器工厂。.........原创 2022-08-07 16:17:01 · 6667 阅读 · 4 评论 -
小满nestjs(第三章 前置知识装饰器)
装饰器是一种特殊的类型声明,他可以附加在类,方法,属性,参数上面装饰器写法 tips(需要开启一项配置) 他会自动把class的构造函数传入到装饰器的第一个参数 target然后通过prototype可以自定义添加属性和方法属性装饰器同样使用@符号给属性添加装饰器他会返回两个参数1.原形对象2.属性的名称同样使用@符号给属性添加装饰器他会返回两个参数1.原形对象2.方法的名称3.参数的位置从0开始同样使用@符号给属性添加装饰器他会返回两个参数1.原形对象2.方法的名称3.属性描述符原创 2022-08-07 13:35:38 · 8749 阅读 · 5 评论 -
小满nestjs(第二章 IOC控制反转 DI依赖注入)
依赖注入(Dependency Injection)其实和IoC是同根生,这两个原本就是一个东西,只不过由于控制反转概念比较含糊(可能只是理解为容器控制对象这一个层面,很难让人想到谁来维护对象关系),所以2004年大师级人物Martin Fowler又给出了一个新的名字:“依赖注入”。类A依赖类B的常规表现是在A中使用B的instance。Inversion of Control字面意思是控制反转,具体定义是高层模块不应该依赖低层模块,二者都应该依赖其抽象;案例未使用控制反转和依赖注入之前的代码。.....原创 2022-08-04 01:09:17 · 10662 阅读 · 9 评论 -
小满nestjs(第一章 介绍nestjs)
Nestjs 是一个用于构建高效可扩展的一个基于Node js 服务端 应用程序开发框架并且完全支持typeScript 结合了 OOP 面向切面的编程方式nestjs 还是一个spring MVC 的风格 其中有依赖注入 IOC 控制反转 都是借鉴了Angualrnestjs 的底层代码运用了 express 和 Fastify 在他们的基础上提供了一定程度的抽象,同时也将其 API 直接暴露给开发人员。这样可以轻松使用每个平台的无数第三方模块nest js 英文官网nestjs 中文网。......原创 2022-08-04 00:14:33 · 18959 阅读 · 7 评论