Russian Qt Forum

Qt => Работа с сетью => Тема начата: Zusykss от Ноябрь 12, 2016, 14:12



Название: Как правильно настроить, ожидание ответа QNetworkAccessManager
Отправлено: Zusykss от Ноябрь 12, 2016, 14:12
Уважаемые коллеги подскажите,  с  помощью каких средств, можно последовательно управлять запросами.
Задача в том, что мне нужно получать ответ парсить, и данные ложить в следующий за ним запрос, а бывает такие случаи, что ответ еще не пришел, а он следующий отправляет....  обычными Sleep(); все работает безотказно, а их использовать не хочется, Так вот я уже пробовал QTimer, QThread::currentThread()->wait(); и ошибки все время повторяются.
Если можете покажите пример
Код:
void NetworkManager::secondPageRequest(const QString & m_mail)
{
init();
QNetworkRequest req;
if (this->cookies.count() != 0)
this->jar->setCookiesFromUrl(this->cookies, NetworkConst::SecondUrl);

// заполнение второго запроса
this->setting.WriteRequestSecond(req, m_mail,this->ReqParams,this->postData);

this->reply = this->networkManager->post(this->request, this->postData);

QObject::connect(this->networkManager.data(), &QNetworkAccessManager::finished,
this, &NetworkManager::slotReplyPostFinished);
QThread::currentThread()->wait(4000);
connectErrorHandlers();
}


Название: Re: Как правильно настроить, ожидание ответа QNetworkAccessManager
Отправлено: Bepec от Ноябрь 13, 2016, 17:50
Создать очередь запросов. И пока не придет текущий ответ с данными, следующий не отправлять.


Название: Re: Как правильно настроить, ожидание ответа
Отправлено: Zusykss от Ноябрь 14, 2016, 08:59
Создать очередь запросов. И пока не придет текущий ответ с данными, следующий не отправлять.

Благодарю за ответ.

Подскажите какими средствами это сделать. Что бы я понимал в каком направлении изучать инфу


Название: Re: Как правильно настроить, ожидание ответа QNetworkAccessManager
Отправлено: Bepec от Ноябрь 19, 2016, 04:42
Эмм...
пихаете задание в QList в нужном вам формате и потом просто push pop.
Тут нет готовых реализаций, это реализуется за 2 минуты.