PySide6.QtNetwork.QHttpHeaders¶
- class QHttpHeaders¶
QHttpHeaders是一个用于保存HTTP头信息的类。更多…在版本6.7中添加。
概要¶
方法¶
def
__init__()def
append()def
clear()def
combinedValue()def
contains()def
insert()def
isEmpty()def
nameAt()def
removeAll()def
removeAt()def
replace()def
reserve()def
size()def
swap()def
toListOfPairs()def
toMultiHash()def
toMultiMap()def
value()def
valueAt()def
values()
静态函数¶
def
fromMultiHash()def
fromMultiMap()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
该类是一个接口类型,用于使用或消费此类标头的Qt网络API。
允许的字段名称和值字符¶
HTTP头由名称和值组成。在设置这些时,
QHttpHeaders会验证名称和值,以确保它们只包含HTTP RFCs允许的字符。有关详细信息,请参阅RFC 9110第5.1和5.5章。总的来说,这意味着:
name必须由可见的ASCII字符组成,且不能为空value可以包含任意字节,只要遵守头部和特定用例的编码规则。value可以为空
此类的设置器会自动移除value中的任何前导或尾随空格,因为在value处理过程中必须忽略它们。
组合值¶
大多数HTTP头值可以用单个逗号
','加上可选的空格组合,语义保持不变。例如,这两个在语义上应该是相似的:// Values as separate header entries myheadername: myheadervalue1 myheadername: myheadervalue2 // Combined value myheadername: myheadervalue1, myheadervalue2
然而,这条规则有一个显著的例外:Set-Cookie。由于这一点以及自定义用例的可能性,
QHttpHeaders不会自动合并这些值。性能¶
大多数
QHttpHeaders函数都提供了WellKnownHeader和 QAnyStringView 的重载。从内存使用和计算的角度来看,建议使用WellKnownHeader的重载。- class WellKnownHeader¶
根据IANA注册表的知名头列表。
常量
描述
QHttpHeaders.WellKnownHeader.AIM
QHttpHeaders.WellKnownHeader.Accept
QHttpHeaders.WellKnownHeader.AcceptAdditions
QHttpHeaders.WellKnownHeader.AcceptCH
QHttpHeaders.WellKnownHeader.AcceptDatetime
QHttpHeaders.WellKnownHeader.AcceptEncoding
QHttpHeaders.WellKnownHeader.AcceptFeatures
QHttpHeaders.WellKnownHeader.AcceptLanguage
QHttpHeaders.WellKnownHeader.AcceptPatch
QHttpHeaders.WellKnownHeader.AcceptPost
QHttpHeaders.WellKnownHeader.AcceptRanges
QHttpHeaders.WellKnownHeader.AcceptSignature
QHttpHeaders.WellKnownHeader.AccessControlAllowCredentials
QHttpHeaders.WellKnownHeader.AccessControlAllowHeaders
QHttpHeaders.WellKnownHeader.AccessControlAllowMethods
QHttpHeaders.WellKnownHeader.AccessControlAllowOrigin
QHttpHeaders.WellKnownHeader.AccessControlExposeHeaders
QHttpHeaders.WellKnownHeader.AccessControlMaxAge
QHttpHeaders.WellKnownHeader.AccessControlRequestHeaders
QHttpHeaders.WellKnownHeader.AccessControlRequestMethod
QHttpHeaders.WellKnownHeader.Age
QHttpHeaders.WellKnownHeader.Allow
QHttpHeaders.WellKnownHeader.ALPN
QHttpHeaders.WellKnownHeader.AltSvc
QHttpHeaders.WellKnownHeader.AltUsed
QHttpHeaders.WellKnownHeader.Alternates
QHttpHeaders.WellKnownHeader.ApplyToRedirectRef
QHttpHeaders.WellKnownHeader.AuthenticationControl
QHttpHeaders.WellKnownHeader.AuthenticationInfo
QHttpHeaders.WellKnownHeader.Authorization
QHttpHeaders.WellKnownHeader.CacheControl
QHttpHeaders.WellKnownHeader.CacheStatus
QHttpHeaders.已知标头.CalManagedID
QHttpHeaders.WellKnownHeader.CalDAVTimezones
QHttpHeaders.WellKnownHeader.CapsuleProtocol
QHttpHeaders.WellKnownHeader.CDNCacheControl
QHttpHeaders.WellKnownHeader.CDNLoop
QHttpHeaders.WellKnownHeader.CertNotAfter
QHttpHeaders.WellKnownHeader.CertNotBefore
QHttpHeaders.WellKnownHeader.ClearSiteData
QHttpHeaders.WellKnownHeader.ClientCert
QHttpHeaders.WellKnownHeader.ClientCertChain
QHttpHeaders.WellKnownHeader.Close
QHttpHeaders.WellKnownHeader.Connection
QHttpHeaders.WellKnownHeader.ContentDigest
QHttpHeaders.WellKnownHeader.ContentDisposition
QHttpHeaders.WellKnownHeader.ContentEncoding
QHttpHeaders.WellKnownHeader.ContentID
QHttpHeaders.WellKnownHeader.ContentLanguage
QHttpHeaders.WellKnownHeader.ContentLength
QHttpHeaders.WellKnownHeader.ContentLocation
QHttpHeaders.WellKnownHeader.ContentRange
QHttpHeaders.WellKnownHeader.ContentSecurityPolicy
QHttpHeaders.WellKnownHeader.ContentSecurityPolicyReportOnly
QHttpHeaders.WellKnownHeader.ContentType
QHttpHeaders.WellKnownHeader.Cookie
QHttpHeaders.知名标头.跨源嵌入策略
QHttpHeaders.WellKnownHeader.CrossOriginEmbedderPolicyReportOnly
QHttpHeaders.WellKnownHeader.CrossOriginOpenerPolicy
QHttpHeaders.知名标头.跨源开启者策略仅报告
QHttpHeaders.WellKnownHeader.CrossOriginResourcePolicy
QHttpHeaders.WellKnownHeader.DASL
QHttpHeaders.WellKnownHeader.Date
QHttpHeaders.WellKnownHeader.DAV
QHttpHeaders.WellKnownHeader.DeltaBase
QHttpHeaders.WellKnownHeader.Depth
QHttpHeaders.WellKnownHeader.Destination
QHttpHeaders.WellKnownHeader.DifferentialID
QHttpHeaders.WellKnownHeader.DPoP
QHttpHeaders.WellKnownHeader.DPoPNonce
QHttpHeaders.WellKnownHeader.EarlyData
QHttpHeaders.WellKnownHeader.ETag
QHttpHeaders.WellKnownHeader.Expect
QHttpHeaders.WellKnownHeader.ExpectCT
QHttpHeaders.WellKnownHeader.Expires
QHttpHeaders.WellKnownHeader.Forwarded
QHttpHeaders.WellKnownHeader.From
QHttpHeaders.WellKnownHeader.Hobareg
QHttpHeaders.WellKnownHeader.Host
QHttpHeaders.WellKnownHeader.If
QHttpHeaders.WellKnownHeader.IfMatch
QHttpHeaders.WellKnownHeader.IfModifiedSince
QHttpHeaders.WellKnownHeader.IfNoneMatch
QHttpHeaders.WellKnownHeader.IfRange
QHttpHeaders.WellKnownHeader.IfScheduleTagMatch
QHttpHeaders.WellKnownHeader.IfUnmodifiedSince
QHttpHeaders.WellKnownHeader.IM
QHttpHeaders.WellKnownHeader.IncludeReferredTokenBindingID
QHttpHeaders.WellKnownHeader.KeepAlive
QHttpHeaders.WellKnownHeader.Label
QHttpHeaders.已知标头.LastEventID
QHttpHeaders.WellKnownHeader.LastModified
QHttpHeaders.WellKnownHeader.Link
QHttpHeaders.WellKnownHeader.Location
QHttpHeaders.WellKnownHeader.LockToken
QHttpHeaders.WellKnownHeader.MaxForwards
QHttpHeaders.WellKnownHeader.MementoDatetime
QHttpHeaders.WellKnownHeader.Meter
QHttpHeaders.WellKnownHeader.MIME版本
QHttpHeaders.WellKnownHeader.Negotiate
QHttpHeaders.WellKnownHeader.NEL
QHttpHeaders.WellKnownHeader.ODataEntityId
QHttpHeaders.WellKnownHeader.ODataIsolation
QHttpHeaders.WellKnownHeader.ODataMaxVersion
QHttpHeaders.WellKnownHeader.ODataVersion
QHttpHeaders.WellKnownHeader.OptionalWWWAuthenticate
QHttpHeaders.WellKnownHeader.OrderingType
QHttpHeaders.WellKnownHeader.Origin
QHttpHeaders.WellKnownHeader.OriginAgentCluster
QHttpHeaders.WellKnownHeader.OSCORE
QHttpHeaders.WellKnownHeader.OSLCCoreVersion
QHttpHeaders.WellKnownHeader.Overwrite
QHttpHeaders.WellKnownHeader.PingFrom
QHttpHeaders.WellKnownHeader.PingTo
QHttpHeaders.WellKnownHeader.Position
QHttpHeaders.WellKnownHeader.Prefer
QHttpHeaders.WellKnownHeader.PreferenceApplied
QHttpHeaders.WellKnownHeader.Priority
QHttpHeaders.WellKnownHeader.ProxyAuthenticate
QHttpHeaders.WellKnownHeader.ProxyAuthenticationInfo
QHttpHeaders.WellKnownHeader.ProxyAuthorization
QHttpHeaders.WellKnownHeader.ProxyStatus
QHttpHeaders.WellKnownHeader.PublicKeyPins
QHttpHeaders.WellKnownHeader.PublicKeyPinsReportOnly
QHttpHeaders.WellKnownHeader.Range
QHttpHeaders.WellKnownHeader.RedirectRef
QHttpHeaders.WellKnownHeader.Referer
QHttpHeaders.WellKnownHeader.Refresh
QHttpHeaders.WellKnownHeader.ReplayNonce
QHttpHeaders.WellKnownHeader.ReprDigest
QHttpHeaders.WellKnownHeader.RetryAfter
QHttpHeaders.WellKnownHeader.ScheduleReply
QHttpHeaders.WellKnownHeader.ScheduleTag
QHttpHeaders.WellKnownHeader.SecPurpose
QHttpHeaders.WellKnownHeader.SecTokenBinding
QHttpHeaders.WellKnownHeader.SecWebSocketAccept
QHttpHeaders.WellKnownHeader.SecWebSocketExtensions
QHttpHeaders.WellKnownHeader.SecWebSocketKey
QHttpHeaders.WellKnownHeader.SecWebSocketProtocol
QHttpHeaders.WellKnownHeader.SecWebSocketVersion
QHttpHeaders.WellKnownHeader.Server
QHttpHeaders.WellKnownHeader.ServerTiming
QHttpHeaders.WellKnownHeader.SetCookie
QHttpHeaders.WellKnownHeader.Signature
QHttpHeaders.WellKnownHeader.SignatureInput
QHttpHeaders.WellKnownHeader.SLUG
QHttpHeaders.WellKnownHeader.SoapAction
QHttpHeaders.WellKnownHeader.StatusURI
QHttpHeaders.WellKnownHeader.StrictTransportSecurity
QHttpHeaders.WellKnownHeader.Sunset
QHttpHeaders.WellKnownHeader.SurrogateCapability
QHttpHeaders.WellKnownHeader.SurrogateControl
QHttpHeaders.WellKnownHeader.TCN
QHttpHeaders.WellKnownHeader.TE
QHttpHeaders.WellKnownHeader.Timeout
QHttpHeaders.WellKnownHeader.Topic
QHttpHeaders.WellKnownHeader.Traceparent
QHttpHeaders.WellKnownHeader.Tracestate
QHttpHeaders.WellKnownHeader.Trailer
QHttpHeaders.WellKnownHeader.TransferEncoding
QHttpHeaders.WellKnownHeader.TTL
QHttpHeaders.WellKnownHeader.Upgrade
QHttpHeaders.WellKnownHeader.Urgency
QHttpHeaders.WellKnownHeader.UserAgent
QHttpHeaders.WellKnownHeader.VariantVary
QHttpHeaders.WellKnownHeader.Vary
QHttpHeaders.WellKnownHeader.Via
QHttpHeaders.WellKnownHeader.WantContentDigest
QHttpHeaders.WellKnownHeader.WantReprDigest
QHttpHeaders.WellKnownHeader.WWWAuthenticate
QHttpHeaders.WellKnownHeader.XContentTypeOptions
QHttpHeaders.WellKnownHeader.XFrameOptions
QHttpHeaders.WellKnownHeader.AcceptCharset
QHttpHeaders.WellKnownHeader.CPEPInfo
QHttpHeaders.WellKnownHeader.Pragma
QHttpHeaders.WellKnownHeader.ProtocolInfo
QHttpHeaders.WellKnownHeader.ProtocolQuery
- __init__()¶
创建一个新的
QHttpHeaders对象。- __init__(other)
- Parameters:
其他 –
QHttpHeaders
创建
other的副本。- append(name, value)¶
- Parameters:
name – str
value – str
- Return type:
布尔
使用
name和value附加一个头条目,并在成功时返回true。另请参阅
WellKnownHeader, QAnyStringView)允许的字段名称和值字符- append(name, value)
- Parameters:
name –
WellKnownHeadervalue – str
- Return type:
布尔
此函数重载了
append(QAnyStringView, QAnyStringView)。- clear()¶
清除所有头条目。
另请参阅
- combinedValue(name)¶
- Parameters:
name – str
- Return type:
返回头部
name的值,以逗号组合的字符串形式。如果带有name的头部不存在,则返回一个null的QByteArray。注意
以这种方式访问‘Set-Cookie’头的值可能无法按预期工作。这是HTTP RFC中的一个显著例外,因为它的值不能以这种方式组合。建议使用
values()代替。另请参阅
values(QAnyStringView)- combinedValue(name)
- Parameters:
名称 –
WellKnownHeader- Return type:
此函数重载了
combinedValue(QAnyStringView)。- contains(name)¶
- Parameters:
name – str
- Return type:
布尔
返回头部是否包含名为
name的头部。另请参阅
WellKnownHeader)- contains(name)
- Parameters:
名称 –
WellKnownHeader- Return type:
布尔
此函数重载了has(QAnyStringView)。
- static fromListOfPairs(headers)¶
- Parameters:
headers – .std.pairQByteArray,QByteArray 的列表
- Return type:
创建一个新的
QHttpHeaders对象,并用headers填充。另请参阅
允许的 字段 名称 和 值 字符- static fromMultiHash(headers)¶
- Parameters:
headers – .QMultiHashQByteArray,QByteArray
- Return type:
创建一个新的
QHttpHeaders对象,并用headers填充。另请参阅
允许的 字段 名称 和 值 字符- static fromMultiMap(headers)¶
- Parameters:
headers – .QMultiMapQByteArray,QByteArray
- Return type:
创建一个新的
QHttpHeaders对象,并用headers填充。另请参阅
Allowed field name and value characters- insert(i, name, value)¶
- Parameters:
i – 整数
name – str
value – str
- Return type:
布尔
在索引
i处插入一个头条目,包含name和value。索引必须有效(参见size())。返回插入是否成功。- insert(i, name, value)
- Parameters:
i – 整数
name –
WellKnownHeadervalue – str
- Return type:
布尔
此函数重载了
insert(qsizetype, QAnyStringView, QAnyStringView)。- isEmpty()¶
- Return type:
布尔
如果头部的大小为0,则返回
true;否则返回false。另请参阅
- nameAt(i)¶
- Parameters:
i – 整数
- Return type:
QLatin1String
返回索引
i处的标题名称。索引i必须有效(参见size())。头部名称是大小写不敏感的,返回的名称是小写的。
- removeAll(name)¶
- Parameters:
name – str
移除头部
name。另请参阅
removeAt()WellKnownHeader)- removeAll(name)
- Parameters:
名称 –
WellKnownHeader
此函数重载了
removeAll(QAnyStringView)。- removeAt(i)¶
- Parameters:
i – 整数
移除索引
i处的标题。索引i必须有效(参见size())。另请参阅
WellKnownHeader)removeAll(QAnyStringView)size()- replace(i, name, newValue)¶
- Parameters:
i – 整数
name – str
newValue – 字符串
- Return type:
布尔
用
name和newValue替换索引i处的头条目。索引必须有效(参见size())。返回替换是否成功。- replace(i, name, newValue)
- Parameters:
i – 整数
name –
WellKnownHeadernewValue – str
- Return type:
布尔
此函数重载了
replace(qsizetype, QAnyStringView, QAnyStringView)。- replaceOrAppend(name, newValue)¶
- Parameters:
name – str
newValue – 字符串
- Return type:
布尔
此函数重载了 replaceOrAppend(WellKnownHeader, QAnyStringView)。
- replaceOrAppend(name, newValue)
- Parameters:
name –
WellKnownHeadernewValue – 字符串
- Return type:
布尔
如果
QHttpHeaders已经包含name,则用newValue替换其值,并删除可能的额外name条目。如果name不存在,则追加一个新条目。如果成功,返回true。此函数是一个便捷方法,用于设置唯一的
name:newValue头信息。对于大多数头信息,相对顺序并不重要,这允许在存在现有条目时重复使用。另请参阅
replaceOrAppend(QAnyStringView, QAnyStringView)- reserve(size)¶
- Parameters:
size – int
尝试为至少
size个头条目分配内存。如果你提前知道会有多少个头部条目,你可以调用这个函数来防止重新分配和内存碎片化。
- size()¶
- Return type:
整数
返回头条目的数量。
- swap(other)¶
- Parameters:
其他 –
QHttpHeaders
将此
QHttpHeaders与other交换。此函数非常快且永远不会失败。- toListOfPairs()¶
- Return type:
std.pairQByteArray的列表,QByteArray
返回头部条目作为(名称,值)对的列表。头部名称不区分大小写,返回的名称是小写的。
- toMultiHash()¶
- Return type:
.QMultiHashQByteArray,QByteArray
返回头部条目作为从名称到值的哈希。头部名称不区分大小写,返回的名称是小写的。
- toMultiMap()¶
- Return type:
.QMultiMapQByteArray,QByteArray
返回头部条目作为从名称到值的映射。头部名称不区分大小写,返回的名称是小写的。
- value(name[, defaultValue={}])¶
- Parameters:
name – str
defaultValue –
QByteArrayView
- Return type:
QByteArrayView
返回(第一个)标头
name的值,如果不存在则返回defaultValue。另请参阅
WellKnownHeader, QByteArrayView)- value(name[, defaultValue={}])
- Parameters:
name –
WellKnownHeaderdefaultValue –
QByteArrayView
- Return type:
QByteArrayView
此函数重载了
value(QAnyStringView, QByteArrayView)。- valueAt(i)¶
- Parameters:
i – 整数
- Return type:
QByteArrayView
返回索引
i处的标头值。索引i必须有效(参见size())。- values(name)¶
- Parameters:
name – str
- Return type:
.list of QByteArray
返回标头
name的值列表。如果标头name不存在,则返回空列表。另请参阅
WellKnownHeader)- values(name)
- Parameters:
名称 –
WellKnownHeader- Return type:
.list of QByteArray
此函数重载了
values(QAnyStringView)。- static wellKnownHeaderName(name)¶
- Parameters:
名称 –
WellKnownHeader- Return type:
QByteArrayView
返回与提供的
name对应的标题名称作为视图。