QHstsPolicy Class
QHstsPolicy 类指定主机是否支持 HTTP 严格传输安全策略(HSTS)。更多
头文件: | #include <QHstsPolicy> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Network) target_link_libraries(mytarget PRIVATE Qt6::Network) |
qmake: | QT += network |
- 所有成员(包括继承成员)的列表
- QHstsPolicy 是网络编程 API 的一部分。
公共类型
enum | PolicyFlag { IncludeSubDomains } |
flags | PolicyFlags |
公共函数
QHstsPolicy() | |
QHstsPolicy(const QDateTime &expiry, QHstsPolicy::PolicyFlags flags, const QString &host, QUrl::ParsingMode mode = QUrl::DecodedMode) | |
QHstsPolicy(const QHstsPolicy &other) | |
~QHstsPolicy() | |
QDateTime | expiry() const |
QString | host(QUrl::ComponentFormattingOptions options = QUrl::FullyDecoded) const |
bool | includesSubDomains() const |
bool | isExpired() const |
void | setExpiry(const QDateTime &expiry) |
void | setHost(const QString &host, QUrl::ParsingMode mode = QUrl::DecodedMode) |
void | setIncludesSubDomains(bool include) |
void | swap(QHstsPolicy &other) |
QHstsPolicy & | operator=(const QHstsPolicy &other) |
相关非成员
bool | operator!=(const QHstsPolicy &lhs, const QHstsPolicy &rhs) |
bool | operator==(const QHstsPolicy &lhs, const QHstsPolicy &rhs) |
详细说明
HSTS 策略定义了一段时间,在此期间QNetworkAccessManager 只能以安全方式访问主机。HSTS 策略由 RFC6797 定义。
您可以在构造函数中或通过调用setExpiry(),setHost() 和setIncludesSubDomains() 为该策略设置到期时间和主机名,并控制该策略是否适用于子域。
另请参阅 QNetworkAccessManager::setStrictTransportSecurityEnabled()。
成员类型文档
枚举 QHstsPolicy::PolicyFlag
flags QHstsPolicy::PolicyFlags
常量 | 值 | 说明 |
---|---|---|
QHstsPolicy::IncludeSubDomains | 1 | 指示策略是否必须包含子域 |
PolicyFlags 类型是QFlags<PolicyFlag> 的类型定义。它存储了 PolicyFlag 值的 OR 组合。
成员函数文档
QHstsPolicy::QHstsPolicy()
构建一个无效(过期)策略,其中主机名为空,且不包括子域。
QHstsPolicy::QHstsPolicy(const QDateTime &expiry, QHstsPolicy::PolicyFlags flags, const QString &host, QUrl::ParsingMode mode = QUrl::DecodedMode)
构造 QHstsPolicy,其中expiry (以 UTC 为单位);flags 是表示该策略是否必须包含子域的值,host 数据根据mode 进行解释。
另请参阅 QUrl::setHost()、QUrl::ParsingMode 和QHstsPolicy::PolicyFlag 。
QHstsPolicy::QHstsPolicy(const QHstsPolicy &other)
创建other 对象的副本。
[noexcept]
QHstsPolicy::~QHstsPolicy()
毁灭者
QDateTime QHstsPolicy::expiry() const
返回策略的到期日期(以 UTC 为单位)。
另请参阅 setExpiry()。
QString QHstsPolicy::host(QUrl::ComponentFormattingOptions options = QUrl::FullyDecoded) const
返回给定策略的主机,格式按照options 。
另请参阅 setHost()、QUrl::host() 和QUrl::ComponentFormattingOptions 。
bool QHstsPolicy::includesSubDomains() const
如果该策略还包括子域,则返回true
。
另请参阅 setIncludesSubDomains()。
bool QHstsPolicy::isExpired() const
如果该策略有有效的到期日期,且该日期大于 QDateTime::currentGetDateTimeUtc(),则返回true
。
void QHstsPolicy::setExpiry(const QDateTime &expiry)
将策略的到期日期(UTC 时)设为expiry 。
另请参阅 expiry() 。
void QHstsPolicy::setHost(const QString &host, QUrl::ParsingMode mode = QUrl::DecodedMode)
设置主机,根据mode 参数解释host 数据。
另请参阅 host(),QUrl::setHost() 和QUrl::ParsingMode 。
void QHstsPolicy::setIncludesSubDomains(bool include)
将此策略是否包含子域设置为include 。
另请参阅 includesSubDomains() 。
[noexcept]
void QHstsPolicy::swap(QHstsPolicy &other)
将此策略与other 互换。该操作速度非常快,从未出现过故障。
QHstsPolicy &QHstsPolicy::operator=(const QHstsPolicy &other)
复制分配运算符,复制other 。
相关非会员
bool operator!=(const QHstsPolicy &lhs, const QHstsPolicy &rhs)
如果lhs 和rhs 这两个策略的主机或过期日期不一致,或在包含或排除子域方面意见不一致,则返回true
。
bool operator==(const QHstsPolicy &lhs, const QHstsPolicy &rhs)
如果lhs 和rhs 这两个策略具有相同的主机和过期日期,同时同意包含或排除子域,则返回true
。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.