如何从控制器JSON返回的值中排除实体字段。NestJS + Typeorm

我想从返回的JSON中排除密码字段。我正在使用NestJS和Typeorm。

针对此问题提供的解决方案不适用于我或NestJS。如果需要,我可以发布我的代码。还有其他想法或解决方案吗?谢谢。

回答:

我建议创建一个利用class-transformer库的拦截器:

@Injectable()

export class TransformInterceptor implements NestInterceptor {

intercept(

context: ExecutionContext,

call$: Observable<any>,

): Observable<any> {

return call$.pipe(map(data => classToPlain(data)));

}

}

然后,只需使用@Exclude()装饰器排除属性,例如:

import { Exclude } from 'class-transformer';

export class User {

id: number;

email: string;

@Exclude()

password: string;

}

以上是 如何从控制器JSON返回的值中排除实体字段。NestJS + Typeorm 的全部内容, 来源链接: utcz.com/qa/431308.html

回到顶部