QtTaskTree::QNetworkReplyWrapper Class
class QtTaskTree::QNetworkReplyWrapperQNetworkReply 和QNetworkAccessManager 的封装类。更多内容...
| 标题: | #include <qnetworkwrappertask.h> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS TaskTree) target_link_libraries(mytarget PRIVATE Qt6::TaskTree) |
| qmake: | QT += tasktree |
| 自: | Qt 6.11 |
| 继承自: | QObject |
| 状态: | 技术预览 |
该类处于技术预览阶段,内容可能会有变动。
注意:该类中的所有函数均为可重入函数。
公共函数
| QNetworkReplyWrapper(QObject *parent) | |
| virtual | ~QNetworkReplyWrapper() override |
| QNetworkReply * | reply() const |
| void | setData(const QByteArray &data) |
| void | setNetworkAccessManager(QNetworkAccessManager *manager) |
| void | setOperation(QNetworkAccessManager::Operation operation) |
| void | setRequest(const QNetworkRequest &request) |
| void | setVerb(const QByteArray &verb) |
| void | start() |
信号
| void | done(QtTaskTree::DoneResult result) |
| void | downloadProgress(qint64 bytesReceived, qint64 bytesTotal) |
| void | sslErrors(const QList<QSslError> &errors) |
| void | started() |
重新实现的受保护函数
| virtual bool | event(QEvent *event) override |
详细说明
QNetworkReplyWrapper 是一个将QNetworkAccessManager 和QNetworkReply 结合在一起的便捷类。
必须调用setNetworkAccessManager()和setRequest()进行配置。默认情况下,QNetworkReplyWrapper配置为QNetworkAccessManager::GetOperation 。使用setOperation()执行其他操作。当配置的操作为Put、Post或Custom时,请使用setData()。当配置的操作为Custom时,请使用setVerb()。
可通过reply() 方法访问关联的QNetworkReply 。该QNetworkReply 由start() 方法动态创建,并由 QNetworkReplyWrapper 管理。在发出done() 信号后,它会被立即删除。
成员函数文档
[explicit] QNetworkReplyWrapper::QNetworkReplyWrapper(QObject *parent)
使用给定的parent 创建QNetworkReplyWrapper。
[override virtual noexcept] QNetworkReplyWrapper::~QNetworkReplyWrapper()
销毁QNetworkReplyWrapper 。如果关联的reply()仍在运行,则将其中止。
[signal] void QNetworkReplyWrapper::done(QtTaskTree::DoneResult result)
当相关的QNetworkReply 执行完毕后,将触发此信号。传递的result 参数指示该任务是成功完成还是出现错误。
另请参阅 reply()。
[signal] void QNetworkReplyWrapper::downloadProgress(qint64 bytesReceived, qint64 bytesTotal)
该信号由正在运行的QNetworkReply 重新发布,并经过bytesReceived 和bytesTotal 。
另请参阅 reply()。
[override virtual protected] bool QNetworkReplyWrapper::event(QEvent *event)
重写了:QObject::event(QEvent *e)。
QNetworkReply *QNetworkReplyWrapper::reply() const
返回指向关联的QNetworkReply 的指针。在QNetworkReplyWrapper 启动之前以及完成之后,该函数返回nullptr。在发出started()信号之后,直至发出done()信号之前,访问QNetworkReply 是安全的。
void QNetworkReplyWrapper::setData(const QByteArray &data)
设置在start() 上使用的data 。该设置仅在访问QNetworkAccessManager::PutOperation 、QNetworkAccessManager::PostOperation 或QNetworkAccessManager::CustomOperation 时生效。
void QNetworkReplyWrapper::setNetworkAccessManager(QNetworkAccessManager *manager)
将“manager ”设置为在start() 上使用。
void QNetworkReplyWrapper::setOperation(QNetworkAccessManager::Operation operation)
将“operation ”设置为在start() 上使用。
void QNetworkReplyWrapper::setRequest(const QNetworkRequest &request)
将start() 中要使用的request 设置为。
void QNetworkReplyWrapper::setVerb(const QByteArray &verb)
在start() 上设置要使用的verb 。该设置仅在QNetworkAccessManager::CustomOperation 情况下生效。
[signal] void QNetworkReplyWrapper::sslErrors(const QList<QSslError> &errors)
该信号由正在运行的QNetworkReply 重新发出,并传递了一个 SSLerrors 的列表。
另请参阅 reply()。
void QNetworkReplyWrapper::start()
[signal] void QNetworkReplyWrapper::started()
该信号在受管理的QNetworkReply 成功启动后发出。
另请参阅 start()。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.