- class QRestReply#
QRestReply
是QNetworkReply
的便捷包装器。有关更多信息更多...新增于版本 6.7。
概述#
方法#
def
__init__()
def
error()
def
errorString()
def
hasError()
def
httpStatus()
def
isSuccess()
def
networkReply()
def
readBody()
def
readJson()
def
readText()
def
swap()
注意
这份文档可能包含从 C++ 自动翻译到 Python 的片段。我们随时欢迎对片段翻译的贡献。如果您发现翻译有问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建票据来让我们知道。
详细说明#
QRestReply
包装了一个QNetworkReply
并提供了处理数据和状态的便捷方法。这些方法为典型的 REST 客户端应用程序提供了便利。QRestReply
不拥有包装的QNetworkReply
,其生命周期和所有权按照QNetworkAccessManager
文档中定义。QRestReply
对象不可拷贝,但可移动。- __init__(reply)#
- 参数:
reply –
QNetworkReply
创建一个
QRestReply
对象,并将包含的QNetworkReply
初始化为reply
。- error()#
- 返回类型:
如果有的话,返回最后的错误。错误包括如网络和协议错误,但不包括服务器以HTTP状态成功响应的情况。
- errorString()#
- 返回类型:
str
返回最后一次网络错误的友好描述。
- hasError()#
- 返回类型:
bool
返回是否发生了错误。这包括网络和协议错误等情况,但不包括服务器成功响应HTTP错误状态的情况(例如
500 Internal Server Error
)。使用httpStatus()
或isHttpStatusSuccess()
获取HTTP状态信息。- httpStatus()#
- 返回类型:
int
返回服务器响应中接收到的HTTP状态。如果没有可用(尚未收到状态行),则值为0。
注意
HTTP状态由接收到的HTTP响应指示。有可能在接收状态后发生错误,例如在接收长响应时网络断开。这些潜在后续错误不通过报告的HTTP状态表示。
- isHttpStatusSuccess()#
- 返回类型:
bool
返回HTTP状态是否在200..299之间。
- isSuccess()#
- 返回类型:
bool
返回HTTP状态是否在200..299之间,并且在接收响应时没有发生其他错误(例如在接收正文数据时突然断开连接)。此函数是检查响应是否被认为成功的一种便捷方式。
- networkReply()#
- 返回类型:
返回指向由该对象包装的底层
QNetworkReply
指针。- readBody()#
- 返回类型:
以QByteArray的形式返回接收到的数据。
调用此函数会消耗到目前为止接收到的数据,直到接收到更多数据,任何后续调用获取响应数据都将返回空内容。
参见
readJson()
readText()
readyRead()
- readJson()#
- 返回类型:
对象
- readText()#
- 返回类型:
str
以QString的形式返回接收到的数据。
接收到的数据被解码到QString(UTF-16)。解码使用Content-Type标题中的charset参数来确定源编码,如果可用。如果编码信息不可用或不被QStringConverter支持,则默认使用UTF-8。
调用此函数会消耗到目前为止接收到的数据。如果没有新数据可用,或者解码不被QStringConverter支持,或者解码有错误(例如无效字符),则返回默认构造值。
参见
readJson()
readBody()
readyRead()
- swap(other)#
- 参数:
其它 –
QRestReply