Qt等待POST完成
Qt wait for POST to complete
我怎么写一个函数等待POST完成?我正在登录到一个网站,有多个重定向和使用连接()与QNetworkReply()
导致无限GET请求。
我现在正在使用等待计时器:
test->sendPostRequest(url, loginData);
QEventLoop loop;
QTimer::singleShot(8000, &loop, SLOT(quit()));
loop.exec();
test->sendGetRequest(request);
您可以使用QEventLoop
使用本地事件循环并将QNetworkAccessManager
完成的信号连接到QEventLoop
的退出槽。这样,当post完成时,本地事件循环退出,其余的被执行:
QNetworkAccessManager *networkManager = new QNetworkAccessManager(this);
networkManager->post(QNetworkRequest(serviceUrl), postData);
QEventLoop loop;
loop.connect(networkManager, SIGNAL(finished(QNetworkReply*)), SLOT(quit()));
loop.exec();
//...
我不应该认为这是"阻塞等待而不阻塞UI"的标准模式。
相关文章:
- 模板参数替换失败,并且未完成隐式转换
- 用C++在单独的头文件中完成函数体
- 如何使用curlpp通过POST方法上传文件和json数据
- 使用libcurl提交批量url的正确BING Api POST url是什么
- 等待整个 omp 块完成,然后再调用第二个函数
- 不必要的C++代码最终会出现在我完成的程序中吗?
- C++一个线程如何正确通信其任务已完成?
- 如何使用libav编写.mov文件,如果文件未正确完成,则可以播放
- 修复完成输入后重复"enter names of teacher"?
- 命名空间 pqxx 无法识别 - 将 libpqxx 添加到 Windows 上的 Visual Studio Post
- async_write完成处理程序最早何时完成?
- 而不是那么多的 if 语句,我想要一个逻辑,我可以用一个语句或优化的方式来完成
- 对于完成布尔值设置为 true 后未停止的循环
- 如何完成内存分配
- 如何根据C++在同一内存位置重新初始化 C# 中的对象(还是自动完成)?
- 如何使用boost/beast从HTTP POST请求中解析和提取有效负载?
- 如何使用 curl 将 POST 请求从 python 重写为 C++
- Bash 自动完成一个选项,而不运行应用程序
- 在最后一个回复完成后才发送POST请求
- Qt等待POST完成