Вопрос по QHttp |
Здравствуйте, гость ( Вход | Регистрация )
Вопрос по QHttp |
Rocky |
23.1.2010, 18:21
Сообщение
#1
|
Старейший участник Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7 |
Всем привет!
Помогите пожалйста разобраться с QHttp. Сейчас требуется написать приложение в такой связке: клиентская часть <-> Apache <-> серверная часть. Не очень понятно с сигналами QHttp. На стороне клиента, если нужно получить какую-то информацию от сервера, я делаю get-запрос. Записываю идентификатор например в std::set. Далее в слоте сигнала requestFinished я ищу в этом std::set свой идентификатор. Если нахожу и если ошибки нет то вызываю QHttp::readAll(). Вопрос 1. Где лучше это делать: в слоте сигнала requestFinished или в слоте сигнала done? Вопрос 2. Если я послал 2 запроса, как мне потом отличить на какой из пришел ответ? Вот это вообще не понятно. Т.е. я сделал 2 get подряд, сгенерировался сигнал requestFinished и как мне в нем узнать на какой из 2-х get-запросов пришел ответ? Все ведь в асинхронном режиме. Далее, если мне нужно отправить какую-то информацию серверной части, я делаю post-запрос. Опять-таки записываю идентификатор например в std::set. Вопрос3. Идентификаторы от post и get не пересекаются или лучше их хранить в разных std::set? И нужно ли их вообще хранить? Вопрос4. Цитата /*post*/ ......... The function returns a unique identifier which is passed by requestStarted() and requestFinished()..... . Не очень понятно, т.е. в requestFinished после post-запросая смогу только посмотреть, прошел ли запрос успешно или нет, так? прийти ведь ничего не должно в ответ, так? Вопрос5. А если серверная часть что-то по http будет запрашивать у клиента, как я об этом узнаю? Или без использования сокетов никак? Вобщем, помогите разобраться пожалуйста, или может есть какая-то стандартная схема или wrapper над QHttp. Спасибо! |
|
|
Litkevich Yuriy |
23.1.2010, 19:35
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
kwisp |
23.1.2010, 20:02
Сообщение
#3
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
Вопрос 2. Если я послал 2 запроса, как мне потом отличить на какой из пришел ответ? Вот это вообще не понятно. Т.е. я сделал 2 get подряд, сгенерировался сигнал requestFinished void requestFinished ( int id, bool error ) отличишь какой пришел по id П.С. С Litkevich Yuriy, согласен полностью. сам использую QNetworkAccessManager |
|
|
Rocky |
23.1.2010, 20:58
Сообщение
#4
|
Старейший участник Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7 |
ок спасибо, буду разбираться
|
|
|
novichkov |
26.7.2010, 20:11
Сообщение
#5
|
Студент Группа: Участник Сообщений: 64 Регистрация: 20.3.2008 Из: Северодвинск Пользователь №: 128 Спасибо сказали: 6 раз(а) Репутация: 1 |
|
|
|
Текстовая версия | Сейчас: 27.12.2024, 9:47 |