Omi*_*ndi 3 node.js grpc angular nestjs grpc-node
我想使用 gRPC 服务在我的微服务之间进行通信。但是当从 Grpc 服务获得响应时,在返回一个方法之前,我想做一些修改和功能。
示例项目:https : //github.com/nestjs/nest/tree/master/sample/04-grpc
像这样:
@Get(':id')
getById(@Param('id') id: string): Observable<Hero> {
const res: Observable<Hero> = this.heroService.findOne({ id: +id });
console.log(res); res.name = res.name + 'modify string';
return res;
}
Run Code Online (Sandbox Code Playgroud)
但在 console.log 中显示以下消息而不是原始响应。
Observable { _isScalar: false, _subscribe: [Function] }
Run Code Online (Sandbox Code Playgroud)
一种方法是将您的转换Observable为 aPromise并等待此承诺。然后您可以修改并返回结果:
@Get(':id')
async getById(@Param('id') id: string): Promise<Hero> {
const res:Hero = await this.heroService.findOne({ id: +id }).toPromise();
res.name = res.name + 'modify string';
return res;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1172 次 |
| 最近记录: |