这是整体情况。
因此,以非常简单的方式,共有3个部分:
所以,如果我们看一下响应,它就像:
find({item: "item 1"})
我需要阅读此响应正文并将其发送回A。
这是详细的解释。
app.module.ts
------------ (X) --------------
HTTP RESPONSE STATUS: 400
RESPONSE BODY:
{
status: 400,
code: 'BAD_REQUEST',
message: 'Message'
}
product.module.ts
@Module({
.....
providers: [
ConvertErrorStatusToCode,
{
provide: 'APP_FILTER',
useClass: HttpExceptionFilter,
}
],
})
export class AppModule implements NestModule{}
product.service.ts
@Module({
controllers: [<Controllers>],
providers: [ProductService],
imports: [HttpModule]
})
export class ProductModule {}
http-exception.filter.ts
@Injectable({ scope: Scope.REQUEST })
export class ProductService {
constructor(<HTTPSERVICE INJECTED>) {}
async somethirdpartycall(): Promise<Partial<MyDto>> {
// here using httpservice i call the URL pasted and
}
}
我正在尝试获取RESPONSE BODY,但无法这样做。所以:
答案 0 :(得分:0)
我建议研究官方文档中的拦截器
https://docs.nestjs.com/interceptors#exception-mapping
尤其是Exception mapping
,这似乎是您发布(转换错误消息)的一个好案例