StupidBeauty
Read times:2361Posted at:Mon Nov 14 03:50:18 2011 - no title specified

Qt4.7文档翻译:QNetworkReply类参考,QNetworkReply Class Reference

详细描述

QNetworkReply 类包含的是对应于某个由QNetworkAccessManager所发出的请求的数据和协议头信息。

QNetworkReply 类包含着与某个由QNetworkAccessManager所发出的请求相关的数据和元数据。像QNetworkRequest一样,它包含一个统一资源定位器(URL)以及一些协议头(同时提供原始形式及分析过的形式)、关于这个回应的某些信息和回应本身的内容。

QNetworkReply是一个顺序存取的QIODevice,这就意味着一旦数据被读出就不再被设备保留咯。∴,如果程序需要保留数据的话,就要由程序自己来保留。每当有新的数据被收到以及处理的时候,就会发射readyRead()信号。

当有数据被接收到时,也会发射downloadProgress()信号,但是其中所包含的字节数可能与真正收到的字节数不一致,∵可能对内容进行变换(例如,解压缩以及去掉协议的开销)。

尽管QNetworkReply 是一个连接到回应内容的QIODevice,它还是会发射uploadProgress()信号,这个信号指示的是具有上传内容的操作的进度。

注意:不要在连接到error()或finished()信号的槽中删除这个对象。应当使用deleteLater()。

参考QNetworkRequestQNetworkAccessManager

成员类型文档

enum QNetworkReply::NetworkError

表示的是在对某个请求进行处理的过程中可能出现的所有的错误情况。

常量

说明

QNetworkReply::NoError

0

没有发生错误。注意:如果超文本传输协议(HTTP)返回一个重定向指令的话,也不会报告错误。你可以使用QNetworkRequest::RedirectionTargetAttribute属性来检查一下是否存在重定向。

QNetworkReply::ConnectionRefusedError

1

远方的服务器拒绝连接(服务器不接受请求)

QNetworkReply::RemoteHostClosedError

2

远方的服务器在我们还没有把整个回应包接收下来并且处理的时候就提前关闭咯连接(☯:没有意外的话,是兲朝的GFW在大显神威)

QNetworkReply::HostNotFoundError

3

远方服务器的主机名解析失败(无效的主机名)(☯:考虑一下兲朝GFW的DNS污染)

QNetworkReply::TimeoutError

4

到远方服务器的连接超时(☯:考虑一下兲朝GFW的黑洞处理)

QNetworkReply::OperationCanceledError

5

在操作完成之前调用咯abort()或close(),导致操作取消。

QNetworkReply::SslHandshakeFailedError

6

SSL/TLS 握手失败,∴无法建立加密通道。这种情况下应当会发射sslErrors()信号。

QNetworkReply::TemporaryNetworkFailureError

7

∵网络断开咯,∴这個连接也断开咯,但是系统已经开始漫游到另一個接入点。这個请求应当在连接重新建立之后立即被重新提交并处理。

QNetworkReply::ProxyConnectionRefusedError

101

代理服务器拒绝连接(代理服务器拒绝接受请求)(☯:妳的隧道或VPN断咯)

QNetworkReply::ProxyConnectionClosedError

102

在我们把整个回应包接收下来并处理完毕之前,代理服务器就关闭咯连接

QNetworkReply::ProxyNotFoundError

103

代理服务器的主机名解析失败(无效的代理服务器主机名)

QNetworkReply::ProxyTimeoutError

104

到代理服务器的连接超时咯,或者代理服务器没有及时响应我们的请求

QNetworkReply::ProxyAuthenticationRequiredError

105

代理服务器需要认证以便满足妳的请求,但是它没有接受妳所提供(如果妳提供咯的话)的任何认证信息

QNetworkReply::ContentAccessDenied

201

远方服务器上的这个内容是禁止访问的(类似超文本传输协议的401 错误)

QNetworkReply::ContentOperationNotPermittedError

202

所请求的对远方服务器上的这个内容的操作是禁止的

QNetworkReply::ContentNotFoundError

203

在远方服务器上找不到妳所请求的内容(类似超文本传输协议的404 错误)

QNetworkReply::AuthenticationRequiredError

204

远方服务器需要认证才能为妳提供对应的内容,但是它没有接受妳所提供(如果有的话)的任何认证信息

QNetworkReply::ContentReSendError

205

这个请求需要重新发送,但是重新发送失败咯,原因有多种,比如说无法再次读取要上传的数据咯。

QNetworkReply::ProtocolUnknownError

301

网络访问接口无法完成这个请求,∵协议是未知的

QNetworkReply::ProtocolInvalidOperationError

302

妳所请求的操作对于这個协议来说是无效的

QNetworkReply::UnknownNetworkError

99

探测到咯一個未知的网络错误

QNetworkReply::UnknownProxyError

199

探测到咯一個未知的代理服务器错误

QNetworkReply::UnknownContentError

299

探测到咯一個未知的与远方服务器上的内容相关的错误

QNetworkReply::ProtocolFailure

399

探测到咯协议中的一個错误(数据分析出错、无效或诡异的回应,等等。)

参考error()。

成员函数文档

NetworkError QNetworkReply::error () const

返回在对这个请求进行处理的时候产生的错误。如果没有发生错误,则返回NoError。

参考setError()。

Your opinions
Your name:Email:Website url:Opinion content: