Russian Qt Forum
Ноябрь 26, 2024, 12:17
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Работа с сетью
>
QHttp и Cookie
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: QHttp и Cookie (Прочитано 4195 раз)
qtuser
Гость
QHttp и Cookie
«
:
Ноябрь 29, 2007, 17:46 »
Помогите разобраться, как работать с куками. Формирую запрос для логина на сервер с помощью QHttpRequestHeader. Отправляю. Получаю ответ с кодом 408 (The time allowed for the login process has been exceeded), такой же ответ получаю при отключенных в браузере cookies. Назначить можно так: http->setValue("Cookie", cookie), прочитать "Set-Cookie", пришедшие от сервара, можно с помощью QHttpResponseHeader и слота responseHeaderReceived. Т.е. что бы назначить куки надо отправить запрос на логин, в ответ на который сервер отправит их и потом опять отправлять запрос на логин, но уже с куками? Помогите разобраться.
Записан
sendevent
Гость
Re: QHttp и Cookie
«
Ответ #1 :
Май 19, 2008, 13:30 »
Вряд ли актуально, но все же:
Авторизация обычно осуществляется через пост-форму. В случае использования "человеческого" браузера сначала запрашивается страница с этой самой формой, при выдаче которой сервер и присылает куки:
get /index.php
...
200 - ok
set-cookie: cake_from_index.php
...
post /login.php
cookie: cake_from_index.php
Обычно в таких куках может лежать либо константа - тогда ее можно просто продублировать "статически", либо сгенеренная на основе полей реквест-пакета/адреса клиента информация - при желании можно определить алгоритм генерации и повторить, либо "какаято фигня, генерируемая серваком непойми как, но воспроизвести не получается" - всякие идентификаторы сессий и т.п. В любом случае, проще и надежнее всосать-таки эту страницу и использовать "настоящие" куки.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...