angular5 httpclient streaming response - PullRequest
       8

angular5 httpclient streaming response

0 голосов
/ 10 января 2019

Я пытаюсь получить доступ к веб-сервису, который возвращает бесконечный поток (текстовых) данных, используя 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();
    }
});

Есть ли способ получить доступ к потоку и отбросить данные во время их обработки?

...