[QtNetwork module]
该QNetworkRequest类持有与发送请求QNetworkAccessManager。More…
Types
enum Attribute { HttpStatusCodeAttribute, HttpReasonPhraseAttribute, RedirectionTargetAttribute, ConnectionEncryptedAttribute, ..., UserMax }
enum CacheLoadControl { AlwaysNetwork, PreferNetwork, PreferCache, AlwaysCache }
enum KnownHeaders { ContentTypeHeader, ContentLengthHeader, LocationHeader, LastModifiedHeader, ..., ContentDispositionHeader }
enum LoadControl { Automatic, Manual }
enum Priority { HighPriority, NormalPriority, LowPriority }
Methods
__init__ (self, QUrl url = QUrl())
__init__ (self, QNetworkRequest other)
QVariant attribute (self, Attribute code, QVariant defaultValue = QVariant())
bool hasRawHeader (self, QByteArray headerName)
QVariant header (self, KnownHeaders header)
QObject originatingObject (self)
Priority priority (self)
QByteArray rawHeader (self, QByteArray headerName)
list-of-QByteArray rawHeaderList (self)
setAttribute (self, Attribute code, QVariant value)
setHeader (self, KnownHeaders header, QVariant value)
setOriginatingObject (self, QObject object)
setPriority (self, Priority priority)
setRawHeader (self, QByteArray headerName, QByteArray value)
setSslConfiguration (self, QSslConfiguration configuration)
setUrl (self, QUrl url)
QSslConfiguration sslConfiguration (self)
QUrl url (self)
Special Methods
bool __eq__ (self, QNetworkRequest other)
bool __ne__ (self, QNetworkRequest other)
Detailed Description
该QNetworkRequest类持有与发送请求QNetworkAccessManager。
QNetworkRequest是网络访问API的一部分,是类保持必要的资料,通过网络发送一个请求。它包含一个URL和一些辅助信息可以用来修改请求。
Type Documentation
QNetworkRequest.Attribute
属性代码为QNetworkRequest和QNetworkReply。
属性是用于控制该请求的行为,并从答复通过进一步的信息返回给应用程序的额外元数据。属性也是可扩展的,允许自定义实现通过自定义值。
下表解释了默认属性代码,该QVariant相关类型,默认值,如果所说的属性是失踪,无论是在请求或回复使用。
Constant | Value | Description |
---|---|---|
QNetworkRequest.HttpStatusCodeAttribute |
0 |
回复只,类型:QVariant.Int (没有默认值)指示从HTTP服务器接收(如200 , 304 , 404 , 401等)的HTTP状态代码。如果连接不是基于HTTP的,此属性将不会出现。 |
QNetworkRequest.HttpReasonPhraseAttribute |
1 |
回复只,类型:QVariant.ByteArray (无默认值)表示HTTP原因短语作为从HTTP服务器接收(如“ OK”,“发现” , “未找到” , “拒绝访问” ,等等)这是状态码的人类可读的表示(见上文) 。如果连接不是基于HTTP的,此属性将不会出现。 |
QNetworkRequest.RedirectionTargetAttribute |
2 |
回复只,类型:QVariant.Url (无默认值)如果存在,则表明服务器将请求重定向到不同的URL。网络访问API,默认情况下不遵循重定向:它是由应用程序决定是否请求重定向应该被允许的,根据其安全策略。返回的URL可能是相对的。使用QUrl.resolved ( )来创建一个绝对URL出来。 |
QNetworkRequest.ConnectionEncryptedAttribute |
3 |
回复只,类型:QVariant.Bool (默认:False )表示通过加密(安全)连接的数据是否获得。 |
QNetworkRequest.CacheLoadControlAttribute |
4 |
唯一的要求,请键入:QVariant.Int (默认值:QNetworkRequest.PreferNetwork )控制如何缓存应该被访问。可能的值有那些QNetworkRequest.CacheLoadControl 。注意,默认QNetworkAccessManager 实现不支持缓存。然而,这个属性可以用于某些后端来修改他们的要求(例如,用于缓存代理服务器) 。 |
QNetworkRequest.CacheSaveControlAttribute |
5 |
唯一的要求,请键入:QVariant.Bool (默认:True)控制,如果得到的数据应该被保存到缓存以备日后使用。如果该值为False ,获得的数据将不被自动缓存。如果为True ,数据可以被缓存,只要它是可缓存的(什么是缓存依赖于所使用的协议) 。 |
QNetworkRequest.SourceIsFromCacheAttribute |
6 |
回复只,类型:QVariant.Bool (默认:False )表示从高速缓存或没有数据是否获得。 |
QNetworkRequest.DoNotBufferUploadDataAttribute |
7 |
唯一的要求,请键入:QVariant.Bool (默认:False )指示是否QNetworkAccessManager 代码被允许缓冲上传数据,例如做一个HTTP POST时。当使用此标志与连续上传数据时,ContentLengthHeader 报头必须被设置。 |
QNetworkRequest.HttpPipeliningAllowedAttribute |
8 |
唯一的要求,请键入:QVariant.Bool (默认:False )指示是否QNetworkAccessManager 代码被允许使用HTTP流水线这一请求。 |
QNetworkRequest.HttpPipeliningWasUsedAttribute |
9 |
回复只,类型:QVariant.Bool 指示HTTP管线是否被用于接收此回复。 |
QNetworkRequest.CustomVerbAttribute |
10 |
唯一的要求,请键入:QVariant.ByteArray 保存了自定义HTTP动词送价值(往其他动词的用法,而不是GET , POST,PUT和DELETE ) 。这个动词是调用时设置QNetworkAccessManager.sendCustomRequest ( ) 。 |
QNetworkRequest.CookieLoadControlAttribute |
11 |
唯一的要求,请键入:QVariant.Int (默认值:QNetworkRequest.Automatic )指示是否在请求中发送’曲奇’标头。此属性设置为FalseQtWebKit 创建一个跨源时XMLHttpRequest 其中withCredentials尚未明确设置为True由创建该请求的Javascript 。看here 了解更多信息。 (这个值被引入4.7 。 ) |
QNetworkRequest.CookieSaveControlAttribute |
13 |
唯一的要求,请键入:QVariant.Int (默认值:QNetworkRequest.Automatic )指示是否保存就回答服务器接收到请求’曲奇’标头。此属性设置为FalseQtWebKit 创建一个跨源时XMLHttpRequest 其中withCredentials尚未明确设置为True由创建该请求的Javascript 。看here 了解更多信息。 (这个值被引入4.7 。 ) |
QNetworkRequest.AuthenticationReuseAttribute |
12 |
唯一的要求,请键入:QVariant.Int (默认值:QNetworkRequest.Automatic )指示是否使用缓存的授权凭证的要求,如果有的话。如果设置为QNetworkRequest.Manual 和身份验证机制是“基本”或“摘要”下,Qt将不会发送任何缓存凭据它可能对请求的URL的一个“授权” HTTP标头。该属性被设置为QNetworkRequest.Manual 通过QtWebKit 创建一个跨源时XMLHttpRequest 其中withCredentials尚未明确设置为True由创建该请求的Javascript 。看here 了解更多信息。 (这个值被引入4.7 。 ) |
QNetworkRequest.User |
1000 |
特殊类型。其他信息可以在传递QVariants 同类型从用户到UserMax 。网络访问的默认实现将忽略在这个范围内的任何请求的属性,它不会产生任何属性在此范围内的答复。的范围被保留用于扩展QNetworkAccessManager 。 |
QNetworkRequest.UserMax |
32767 |
特殊类型。请参阅用户。 |
这个枚举被引入或修改的Qt 4.7 。
QNetworkRequest.CacheLoadControl
控件的缓存机制QNetworkAccessManager。
Constant | Value | Description |
---|---|---|
QNetworkRequest.AlwaysNetwork |
0 |
总是从网络加载和不检查缓存有一个有效的条目(类似于浏览器的“刷新”功能) |
QNetworkRequest.PreferNetwork |
1 |
默认值;从网络加载,如果缓存条目是早于网络入口 |
QNetworkRequest.PreferCache |
2 |
从缓存中加载如果可用,否则从网络加载。请注意,这可以从缓存中返回可能是陈旧的(但没有过期)项目。 |
QNetworkRequest.AlwaysCache |
3 |
从缓存中只加载,显示错误,如果该项目没有缓存(即离线模式) |
QNetworkRequest.KnownHeaders
众所周知头类型的列表QNetworkRequest解析。每个已知的头也代表了原始形式,其完整的HTTP名字。
Constant | Value | Description |
---|---|---|
QNetworkRequest.ContentTypeHeader |
0 |
对应到HTTP Content-Type头,并包含包含媒体的字符串( MIME)类型和任何辅助数据(例如,字符集) |
QNetworkRequest.ContentLengthHeader |
1 |
对应于HTTP的Content-Length头,并包含长度在所发送的数据的字节数。 |
QNetworkRequest.LocationHeader |
2 |
对应于HTTP位置报头和包含表示该数据的实际位置,包括在壳体的重定向的目标URL的URL。 |
QNetworkRequest.LastModifiedHeader |
3 |
对应到HTTP Last-Modified头,并包含一个QDateTime 代表内容的最后修改日期 |
QNetworkRequest.CookieHeader |
4 |
对应于HTTP Cookie头部,并包含一个QList \u003cQNetworkCookie \u003e表示要发送回服务器的饼干 |
QNetworkRequest.SetCookieHeader |
5 |
对应于HTTP的Set-Cookie报头,并包含一个QList \u003cQNetworkCookie \u003e表示由服务器发送到存储在本地的饼干 |
See also header( )setHeader( )rawHeader()和setRawHeader( ) 。
QNetworkRequest.LoadControl
指示如果请求的加载机制的一个方面已手动复盖,如通过QtWebKit。
Constant | Value | Description |
---|---|---|
QNetworkRequest.Automatic |
0 |
默认值:表示默认行为。 |
QNetworkRequest.Manual |
1 |
表示行为已手动复盖。 |
这个枚举被引入或修改的Qt 4.7 。
QNetworkRequest.Priority
这个枚举列出了可能的网络请求优先级。
Constant | Value | Description |
---|---|---|
QNetworkRequest.HighPriority |
1 |
高优先级 |
QNetworkRequest.NormalPriority |
3 |
普通优先级 |
QNetworkRequest.LowPriority |
5 |
低优先级 |
这个枚举被引入或修改的Qt 4.7 。
Method Documentation
QNetworkRequest.__init__ (self, QUrl url = QUrl())
构造一个QNetworkRequest与对象url以被请求的URL 。
QNetworkRequest.__init__ (self, QNetworkRequest other)
创建副本other。
QVariant QNetworkRequest.attribute (self, Attribute code, QVariant defaultValue = QVariant())
bool QNetworkRequest.hasRawHeader (self, QByteArray headerName)
返回True如果原始标题headerName存在于这个网络请求。
See also rawHeader()和setRawHeader( ) 。
QVariant QNetworkRequest.header (self, KnownHeaders header)
返回已知的网络标头的值header如果它存在于这个请求。如果它不存在,则返回的QVariant () (即,无效的变体) 。
See also KnownHeaders,rawHeader()和setHeader( ) 。
QObject QNetworkRequest.originatingObject (self)
[
返回一个引用到启动此网络请求的对象,则返回0 ,如果没有设置或对象已经被销毁。
此功能被引入Qt的4.6 。
](docs_qobject.html)
See also setOriginatingObject( ) 。
Priority QNetworkRequest.priority (self)
[
返回此请求的优先级。
此功能被引入Qt的4.7 。
](docs_qnetworkrequest.html#Priority-enum)
See also setPriority( ) 。
QByteArray QNetworkRequest.rawHeader (self, QByteArray headerName)
返回头的原始形式headerName。如果没有这样的标头,空QByteArray被返回,这可能是由一个标题,是目前无法区分,但没有任何内容(用hasRawHeader( )来找出如果头存在与否) 。
原标题可以被设置setRawHeader()或与setHeader( ) 。
See also header()和setRawHeader( ) 。
list-of-QByteArray QNetworkRequest.rawHeaderList (self)
返回在这个网络要求设置的所有原始标题的列表。这份名单是在头被设定的顺序。
See also hasRawHeader()和rawHeader( ) 。
QNetworkRequest.setAttribute (self, Attribute code, QVariant value)
设置与代码相关的属性code是值value。如果属性已经设置,以前的值将被丢弃。在特殊的,如果value是无效的QVariant,属性未设置。
See also attribute()和QNetworkRequest.Attribute。
QNetworkRequest.setHeader (self, KnownHeaders header, QVariant value)
设置了已知头的值header要value,复盖任何先前设置的标头。此操作还设置了相当于原始HTTP标头。
See also KnownHeaders,setRawHeader()和header( ) 。
QNetworkRequest.setOriginatingObject (self, QObject object)
允许设置的参考object发起请求。
例如QtWebKit设置原始对象的QWebFrame发起请求。
此功能被引入Qt的4.6 。
See also originatingObject( ) 。
QNetworkRequest.setPriority (self, Priority priority)
设置此请求的优先级,以priority。
Note:该priority只是一个暗示,网络访问管理器。它可以使用或不使用。目前它被用于HTTP来决定哪个请求应该被首先发送到服务器。
此功能被引入Qt的4.7 。
See also priority( ) 。
QNetworkRequest.setRawHeader (self, QByteArray headerName, QByteArray value)
设置页眉headerName有利用价值headerValue。如果headerName对应于一个已知的报头(参见QNetworkRequest.KnownHeaders) , raw格式将被解析和相应的“熟”头将被设置为好。
例如:
request.setRawHeader("Last-Modified", "Sun, 06 Nov 1994 08:49:37 GMT");
还将设置称为标头LastModifiedHeader是QDateTime解析日期的对象。
注意:在设置相同的头两次将复盖以前的设置。为了实现多个同名的HTTP头的行为,你应该将两者连接起来的值,用逗号将它们隔开( “,” ),并设置一个单一的原始标题。
See also KnownHeaders,setHeader( )hasRawHeader()和rawHeader( ) 。
QNetworkRequest.setSslConfiguration (self, QSslConfiguration configuration)
设置此网络请求的SSL配置是config。该应用设置为私有密钥,本地证书, SSL协议(的SSLv2 , SSLv3的,使用TLSv1如适用) ,即在SSL后端被允许使用的CA证书和密码。
缺省情况下, SSL配置设置,这使得后端可以自由选择什么样的配置是最适合他们。
See also sslConfiguration()和QSslConfiguration.defaultConfiguration( ) 。
QNetworkRequest.setUrl (self, QUrl url)
设置此网络请求所指的是网址url。
See also url( ) 。
QSslConfiguration QNetworkRequest.sslConfiguration (self)
[
返回此网络请求的SSL配置。缺省情况下, SSL设置中指定。
](docs_qsslconfiguration.html)
See also setSslConfiguration( ) 。
QUrl QNetworkRequest.url (self)
[
返回此网络请求是指URL中。
](docs_qurl.html)
bool QNetworkRequest.__eq__ (self, QNetworkRequest other)
bool QNetworkRequest.__ne__ (self, QNetworkRequest other)