Nestjs 框架教程(第八篇:管道)

臨池不輟 at 
管道(Pipes)是一个用 @Injectable() 装饰过的类,它必须实现 PipeTransform 接口。从官方的示意图中我们可以看出来管道 pipe 和过滤器 filter 之间的关系:管道偏向于服务端控制器逻辑,过滤器则更适合用客户端逻辑。过滤器在客户端发送请求**==后==处理,管道则在控制器接收请求==前==**处理。管道通常有两种作用:转换/变形:转换输入数据为目标格式验证:对输入数据时行验证,如果合法让数据通过管道,否则抛出异常。管道会处理控制器路由的参数,Nest 会在方法调用前插入管道,管道接收发往该方法的参数,此时就会触发上面两种情况。然后路由处理器会接收转换过的参数……