Qt之QNetworkAccessManager

QNetworkAccessManager类可以向服务器发送请求和接受应答。

QNetworkAccessManager类是网络访问API的主要部分,包含了对请求的配置与设置,还有监控网络操作过程的应答信号,以及其他相关信号。

简单事例如下:

  QNetworkAccessManager *manager = new QNetworkAccessManager(this);

  connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));

  manager->get(ANetworkRequest(QUrl("http://qt.nokia.com")));

当replyFinished(QNetworkReply*)被调用后,下载的数据和metadata会保存在QNetworkReply中。

当数据返回后,需要用户在合适的时间来删除QNetworkReply,不要直接在与finished相关联的槽中直接删除,可以使用deleteLater()删除。

QNetworkAccessManager会把收到的请求排队处理。


Public Types

enumNetworkAccessibility { UnknownAccessibility, NotAccessible, Accessible }
enumOperation { HeadOperation, GetOperation, PutOperation, PostOperation, DeleteOperation, CustomOperation }

Properties

Public Functions

 QNetworkAccessManager ( QObject * parent = 0 )
 ~QNetworkAccessManager ()
QNetworkConfigurationactiveConfiguration () const
QAbstractNetworkCache *cache () const
QNetworkConfigurationconfiguration () const
QNetworkCookieJar *cookieJar () const
QNetworkReply *deleteResource ( const QNetworkRequest & request )
QNetworkReply *get ( const QNetworkRequest & request )
QNetworkReply *head ( const QNetworkRequest & request )
NetworkAccessibilitynetworkAccessible () const
QNetworkReply *post ( const QNetworkRequest & request, QIODevice * data )
QNetworkReply *post ( const QNetworkRequest & request, const QByteArray & data )
QNetworkReply *post ( const QNetworkRequest & request, QHttpMultiPart * multiPart )
QNetworkProxyproxy () const
QNetworkProxyFactory *proxyFactory () const
QNetworkReply *put ( const QNetworkRequest & request, QIODevice * data )
QNetworkReply *put ( const QNetworkRequest & request, QHttpMultiPart * multiPart )
QNetworkReply *put ( const QNetworkRequest & request, const QByteArray & data )
QNetworkReply *sendCustomRequest ( const QNetworkRequest & request, const QByteArray & verb, QIODevice * data = 0 )
voidsetCache ( QAbstractNetworkCache * cache )
voidsetConfiguration ( const QNetworkConfiguration & config )
voidsetCookieJar ( QNetworkCookieJar * cookieJar )
voidsetNetworkAccessible ( NetworkAccessibility accessible )
voidsetProxy ( const QNetworkProxy & proxy )
voidsetProxyFactory ( QNetworkProxyFactory * factory )
  • 29 public functions inherited from QObject

Signals

voidauthenticationRequired ( QNetworkReply * reply, QAuthenticator * authenticator )
voidfinished ( QNetworkReply * reply )
voidnetworkAccessibleChanged ( QNetworkAccessManager::NetworkAccessibility accessible )
voidproxyAuthenticationRequired ( const QNetworkProxy & proxy, QAuthenticator * authenticator )
voidsslErrors ( QNetworkReply * reply, const QList<QSslError> & errors )

Protected Functions

virtual QNetworkReply *createRequest ( Operation op, const QNetworkRequest & req, QIODevice * outgoingData = 0 )


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值