Я пытаюсь получить доступ к веб-сервису, который возвращает бесконечный поток (текстовых) данных, используя httpclient angular5. У меня есть это до сих пор, который работает до тех пор, пока res.partialText
больше, чем javascript может обработать, а затем падает:
var req = new HttpRequest('GET', 'http://localhost:5001/data',
{ reportProgress: true, responseType: 'text', observe: 'response' });
http.request(req).subscribe((res: any) => {
if (3 === res.type) {
var buff: string = leftovers + res.partialText.substring(read, res.partialText.length);
var lastBar: number = buff.lastIndexOf('|');
leftovers = buff.substring(lastBar + 1);
var values: DsMessage[] = my.parse(buff.substring(0, lastBar));
read = res.loaded;
my._data.next(values);
}
else if (HttpEventType.Response === res.type) {
my._data.complete();
}
});
Есть ли способ получить доступ к потоку и отбросить данные во время их обработки?