Отправка данных в сокет - C#
Формулировка задачи:
Здравствуйте, уважаемые программисты.
Недавно начала изучать c#, столкнулся с проблемой.
Пытаюсь написать http-сервер, используя WinSock. Сразу приведу код, в котором, по моему мнению, находится проблема:
В чём собственно проблема. Запускаю этот сервер, захожу браузером на свой IP + порт сервера. Браузер постоянно грузит что-то безответно. Но когда я закрываю свой http-сервер, браузер сразу же получает заголовки и html код страницы.
С чем это может быть связано, и как это исправить?
Заранее благодарен за ответ!
while (true)
{
// Принимаем соединение
Socket socket = s.Accept();
// html код страницы
string html = "<b>Hello</b>";
// http-заголовки для браузера
string headers = "HTTP/1.1 200 OK\nContent-type: text/html\nContent-Encoding: 8bit\n";
headers += "Content-Length: " + html.Length + headers.Length + "\n\n";
socket.Send(Encoding.UTF8.GetBytes(headers), headers.Length, SocketFlags.None);
socket.Send(Encoding.UTF8.GetBytes(html), html.Length, SocketFlags.None);
}Решение задачи: «Отправка данных в сокет»
textual
Листинг программы
string headers = "HTTP/1.1 200 OK\nContent-type: html\n"; headers += "Content-Length: " + html.Length + headers.Length + "Connection: close" + "\n\n";