【发布时间】:2018-09-26 17:41:55
【问题描述】:
我目前正在使用 pipe 和 concatMap 来链接多个 http 请求,如下所示:
onErrorResumeNext(from(ids))
.pipe(
delay(10),
concatMap(id => get(id))
)
.subscribe(res => {
if (res = emptydata) return id
});
get 函数处理从 id 数组构建查询字符串,还包含 retry 和 catchError。
现在,问题是如果我没有得到关于响应对象的数据,我需要访问相同的 id 参数。
有什么想法吗?
【问题讨论】:
-
需要在哪里访问
id参数? -
订阅后。这不是一个真正的 http 错误,因为我确实得到了响应。它只是一个空对象。订阅后我有一个 if-else 语句可以检查它。如果为真,我需要找出它是哪个 ID。
-
“订阅后”是什么意思?订阅后你不能做任何事情,因为它是异步的。您必须在订阅回调中处理它。
-
是的,一旦响应返回订阅回调。我已经编辑了这个问题。我不确定这是否会影响它,但订阅发生在组件中,但是,管道是从服务返回的。
标签: angular http rxjs observable