【发布时间】:2018-11-08 10:14:01
【问题描述】:
我需要一个控制器动作:
- 授权调用
- 验证它
- 返回 202 Accepted 状态
- 继续处理请求
- 使用先前接受和现在处理的请求的结果调用外部 API。
前两点很简单,我使用AuthGuard 然后class-validator。但我不知道如何返回 HTTP 响应然后继续处理。
由于请求由一组(可能长时间运行的)任务组成,我想到使用拦截器,该拦截器使用 RxJS 来观察任务的状态并在完成后调用外部 PI。但是,我没有使用 RxJS 或拦截器(不是这种方式)的经验,所以我真的不知道如何让拦截器的进程运行,但立即将控制权传递给控制器的操作。
另外,也许还有另一种更好的方法?没有拦截器,只是将所有流逻辑放在控制器中?还有其他选择吗?
【问题讨论】:
标签: javascript node.js asynchronous nestjs long-running-processes