【发布时间】:2019-07-15 10:46:55
【问题描述】:
我需要从服务器检索无限量的数据。这应该通过以下方式进行:
- 发送初始请求
- 检索部分数据并告诉服务器一切正常,我可以获取更多数据
- 重复第 2 步和第 3 步,直到我收到一个表示没有更多数据的特定值
如何使用 observables 做到这一点?
现在我只能想到一些类似函数的递归可观察调用。
const send = execSend() {
this.send(message).subscribe(resp => {
if (resp === 'end') {
subscriber.next(byteArr.join(''));
console.log('finished');
subscriber.complete();
} else {
byteArr.push(resp);
execSend();
}
});
}();
【问题讨论】:
-
你想每次都发送相同的请求吗?
-
是的。这只是告诉服务器我得到了我的价值并为下一个做好了准备。更准确地说,所有这些都是为了在收到所有内容时逐块检索大量数据以将其全部合并。由于使用的是 WebSocket,因此我们受限于数据大小限制。
标签: angular typescript rxjs angular2-observables