На какой основе работает upload.onprogress?
К примеру у меня канал 200 КБ/с. Я шлю 10 мегабайтовый файл, и логично, что пока файл не отправится полностью я её смогу сделать новый запрос. На какой основе это работает? Сервер как-то отвечает количеством принятых данных? Или я что то про TCP не знаю? Могу ли я как-то получать прогресс для send у вебсокета?
https://learn.javascript.ru/xhr-onprogress
* Событие происходит при каждом отправленном байте, но не чаще чем раз в 50 мс. Это обозначено в спецификации progress notifications
* Событие xhr.upload.onprogress срабатывает, когда данные отправлены браузером. Но оно не гарантирует, что сервер получил, обработал и записал данные на диск. Он говорит лишь о самом факте отправки