在本页

QtTaskTree::QNetworkReplyWrapper Class

class QtTaskTree::QNetworkReplyWrapper

QNetworkReplyQNetworkAccessManager 的封装。更多

头文件: #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 是一个结合了QNetworkAccessManagerQNetworkReply 的便捷类。

强制配置是调用setNetworkAccessManager() 和setRequest() 。默认情况下,QNetworkReplyWrapper 是通过QNetworkAccessManager::GetOperation 配置的。使用setOperation() 执行其他操作。当配置的操作是 Put、Post 或 Custom 时,使用setData() 。当配置的操作为自定义时,使用setVerb() 。

可通过reply() 方法访问相关的QNetworkReplyQNetworkReplystart() 方法动态创建,并由 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 重新发出,经过bytesReceivedbytesTotal

另请参见 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)

data 设置为在start() 上使用。它仅在QNetworkAccessManager::PutOperation,QNetworkAccessManager::PostOperationQNetworkAccessManager::CustomOperation 的情况下使用。

void QNetworkReplyWrapper::setNetworkAccessManager(QNetworkAccessManager *manager)

设置manager ,以便在start() 上使用。

void QNetworkReplyWrapper::setOperation(QNetworkAccessManager::Operation operation)

设置operation ,以便在start() 上使用。

void QNetworkReplyWrapper::setRequest(const QNetworkRequest &request)

设置request ,以便在start() 上使用。

void QNetworkReplyWrapper::setVerb(const QByteArray &verb)

设置verb ,以便在start() 上使用。它仅在QNetworkAccessManager::CustomOperation 的情况下使用。

[signal] void QNetworkReplyWrapper::sslErrors(const QList<QSslError> &errors)

该信号从运行中的QNetworkReply 重新发出,传递 sslerrors 列表。

另请参阅 reply() 。

void QNetworkReplyWrapper::start()

启动QNetworkReplyWrapper

[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.