NestJS + Swagger UI:非 200 状态码 Execute 时返回值不显示问题
bronana
·
2026-01-06
·
via V2EX
 |
|
7
willsank0430 2 月 3 日
import { CallHandler, ExecutionContext, HttpStatus, Injectable, NestInterceptor } from '@nestjs/common'; import { Observable } from 'rxjs'; import { FastifyRequest, FastifyReply } from 'fastify'; /** * 针对 post 请求默认响应 201 的问题处理 * */ @Injectable() export class PostInterceptor implements NestInterceptor { intercept(context: ExecutionContext, next: CallHandler): Observable<any> { const request = context.switchToHttp().getRequest<FastifyRequest['raw']>(); const response = context.switchToHttp().getResponse<FastifyReply['raw']>(); if (request.method === 'POST') { if (response.statusCode === 201) { context.switchToHttp().getResponse().status(HttpStatus.OK); } } return next.handle(); } }
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。