Как принимать данные в потоковом режиме JavaScript
Мне нужно потоково обрабатывать данные на сайде в бразуере от сервера. Я вроде бы остановился на методе с fetch и UInt8Array. Меня это вроде устаивает, но когда я пытаюсь подключиться в своему серверу у меня выдает ошибку Uncaught TypeError TypeError: Failed to fetch. Вот код клиента
async function readData(url) {
const response = await fetch(url);
const reader = response.body.getReader();
while (true) {
const { done, value } = await reader.read();
if (done) {
// Do something with last chunk of data then exit reader
return;
}
console.log(value);
// Otherwise do something here to process current chunk
}
}
//readData("https://habrastorage.org/r/w390/getpro/habr/upload_files/087/855/cfe/087855cfe58661eb369550d1d512646d.png")
readData("http://localhost:5217/api");
и код сервера
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace TestServerASP.Controllers
{
[Route("api")]
[ApiController]
public class Start : ControllerBase
{
[HttpGet("{req}")]
public IResult Get(string req)
{
return Results.Stream(new MemoryStream(Enumerable.Range(50, req.Length).Select(i => (byte)i).ToArray()));
}
}
}
естетсвенно временно стоит такая заглушка вместо нормального потока, но, например с свагере работает, в постмане работает, а если через fetch то выдает ошибку. В чем проблема? какие есть требования для запросов чтобы их можно было зафетчить?