作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 QnetworkAccessManager 发出 HTTP 请求,我想知道何时解析 FQDN(DNS 解析)以获取 IP 地址或 IP 地址列表。
QNetworkAccessManager 如何从已解析的 IP 列表中选择 IP 来发送请求?
QNetworkAccessManager是否保留DNS解析的缓存?
最佳答案
QNetworkAccessManager
使用 QAbstractSocket
包括其解析主机名的能力。 QAbstractSocket
使用 QHostInfo::lookupHost
获取指定主机的 IP 列表(QHostInfo::addresses
)。 QAbstractSocket
尝试连接到每个 QHostInfo::addresses
直到连接成功。
无法知道使用了哪个地址,因为 QNetworkAccessManager
不会向用户公开使用过的套接字。您可以使用 QHostInfo
公共(public) API 获取完整的地址列表。
QHostInfo
具有内部全局缓存,可存储最多 128 个项目,最长期限为 1 分钟。
关于qt - 在 QNetworkAccessManager 中,何时从解析 DNS 的 IP 列表中选择 IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29892160/
我是一名优秀的程序员,十分优秀!