Ковыряя ASP.NET
проект я задумался, а как за кулисами реализуются интернет-потоки.
Скажем, контроллеры имеют метод в который можно передать поток байт и вызывающая сторона начнет их скачивать.
Браузер многократно посылается запрос на одну и ту же ссылку, запрашивая определенный Range
через заголовок?
Язык меня особо не интересует, так как реализация там скорее всего будет +- идентичная.
Рещюмируя, вопросы по части взаимодействия вот такие:
P.S Я исходники .NET CORE
стянул, что бы посмотреть реализацию, но пока руки не дошли. Быть может кто-то уже разбирал это и может на пальцах рассказать...
"За кулисами", если я правильно понял вопрос, это реализуется через Transfer-Encoding: chunked:
Chunked transfer encoding — механизм передачи данных в протоколе передачи гипертекста (HTTP), позволяющий надёжно доставлять данные от сервера клиенту (чаще всего клиентскому web-браузеру) без необходимости заранее знать точный размер всего тела HTTP-сообщения. Это достигается разбиением сообщения на небольшие части (chunks), а затем передачей каждой части с указанием только её размера (в шестнадцатеричном виде). Окончание передачи сообщения определяется наличием последней части с нулевой длиной. Такой механизм позволяет передать динамически сформированные объекты, для которых нельзя заранее определить размер. Он стал доступен только начиная с HTTP версии 1.1 (HTTP/1.1).
Без механизма сhunked transfer encoding с каждым HTTP-пакетом необходимо указывать заголовок Content-Length, чтобы клиент мог найти конец передаваемого сообщения.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Как можно создать ассоциативный массив в c#? В других языках например как js и php это делается легко, но в С# так не работает
Похожий вопрос уже был но там немного другой код, а я немного разобрался в своем коде и боюсь его сломать
Данный код, в случае его выполнения, должен прописывать в определённую ячейку текст "Выявлены ошибки"При пошаговом выполнении вижу, что программа...