Russian Qt Forum

Qt => Работа с сетью => Тема начата: akr от Октябрь 12, 2007, 10:41



Название: Qt и Winsock
Отправлено: akr от Октябрь 12, 2007, 10:41
Подскажите, кто знает.
Имеется приложение на Qt (ver. 3.2.1 for Win).
Я в нем реализовал работу работу с http-протоколом через Winsock.
В частности получение страницы с заданного URL я использую следующий запрос:

"GET / HTTP/1.0\r\nAccept: text/*\r\nNo Content-Transfer-Encoding\r\nAccept-Charset: windows-1251\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)\r\nHost: ahom.ru\r\n\r\n";

Вывод страницы происходит по нажатию кнопки на консоль (через std::cout << ...) и в элемент Qt QTextEdit в цикле

while(bytesRecv != -1)
{
        bytesRecv = recv(s, recvbuf, 1000, 0);
        (плюс еще проверки дополнительные)...
}
с этим проблем нет.

Самое интересное происходит, если я указываю версию HTTP не 1.0, а  1.1.
То приложение перестает отвечать. (В заголовке окна появляется "(Не отвечает)")

Без использование Qt - проблем нет - страница приходит.
Как быть?


Название: Re: Qt и Winsock
Отправлено: T800 от Октябрь 18, 2007, 22:40
А почему 1.1? Может сразу 4?  :P
Есть подозрение что  1.1  не поддерживается в такой форме. надо читать инструкции...