У меня есть небольшая программа, которая отправляет http-запрос и получает ответ по протоколу TCP.
Мой формат запроса;
GET / HTTP/1.0
Host: somewebsite.com
{two new line}
Я читаю ответ построчно из сокета (, используя NetworkStream и StreamReader в c #), пока не найду заголовок длины содержимого -. Я сохраняю длину, затем продолжаю чтение, пока не найду пустую строку. Затем создайте буфер с длиной и получите остальную часть ответа.
Но некоторые ответы не имеют заголовка длины содержимого -. Так что мой подход не работает. Если я не знаю, сколько байтов я должен получить, когда я должен остановиться?