Qt网络编程:DNS查找
一、描述
QDnsLookup 使用操作系统提供的机制来执行 DNS 查找。
注意:如果您只是想查找与主机名关联的 IP 地址,或与 IP 地址关联的主机名,则应改用 QHostInfo。
1.1、DNS服务
相比于用IP地址去访问网站,人们更愿意用域名。DNS协议提供提供域名查找IP地址或逆向从IP地址查找域名的服务。
二、类型成员
1、enum QDnsLookup::Error:指示在处理 DNS 查找过程中发现的所有可能的错误情况。
- NoError:没有错误。
- ResolverError:初始化系统的 DNS 解析器时出错。
- OperationCancelledError:使用 abort() 方法中止了查找。
- InvalidRequestError:请求的 DNS 查找无效。
- InvalidReplyError:服务器返回的回复无效。
- ServerFailureError:服务器在处理请求时遇到内部故障 (SERVFAIL)。
- ServerRefusedError:服务器出于安全或策略原因拒绝处理请求(REFUSED)。
- NotFoundError:请求的域名不存在 (NXDOMAIN)。
2、QDnsLookup::Type:指示执行的 DNS 查找的类型。
- A:IPv4 地址记录。
- AAAA:IPv6 地址记录。
- ANY:任何记录。
- CNAME:规范名称记录。
- MX:邮件交换记录。
- NS:名称服务器记录。
- PTR:指针记录。
- SRV:服务记录。
- TXT:文本记录。
三、成员函数
1、void abort()
中止 DNS 查找操作。如果查找已经完成,则什么都不做。
2、[signal] void finished()
查找完成时发出此信号。
3、void lookup()
执行 DNS 查找。
4、QList<QDnsDomainNameRecord> canonicalNameRecords()
返回与此查找关联的域名记录列表。
5、QList<QDnsHostAddressRecord> hostAddressRecords()
返回与此查找关联的主机地址记录列表。
6、QList<QDnsMailExchangeRecord> mailExchangeRecords()
返回与此查找关联的邮件交换记录列表。
7、QList<QDnsDomainNameRecord> nameServerRecords()
返回与此查找关联的名称服务器记录列表。
8、QList<QDnsDomainNameRecord> pointerRecords()
返回与此查找关联的指针记录列表。
9、QList<QDnsServiceRecord> serviceRecords()
返回与此查找关联的服务记录列表。
10、QList<QDnsTextRecord> textRecords()
返回与此查找关联的文本记录列表。
四、使用示例
QDnsLookup * dns = new QDnsLookup();QDnsLookup::connect(dns, &QDnsLookup::finished,[dns]{qDebug()<<"finished";if (dns->error() != QDnsLookup::NoError){qWarning("DNS查找失败");dns->deleteLater();return;}foreach (auto &record , dns->hostAddressRecords()){qDebug()<<record.name()<<" "<<record.value();}dns->deleteLater();});dns->setType(QDnsLookup::A);dns->setName("www.baidu.com");dns->lookup();
Qt网络编程:DNS查找相关推荐
- Qt网络编程概述(一)
分享主题 Qt网络编程概述(一) Qt网络编程之QTCPSocket和QTCPServer实例(二) Qt网络编程之QUdpSocket实例(三) Qt网络编程概述 QtNetWork模块提供了若干类 ...
- [Qt教程] 第31篇 网络(一)Qt网络编程简介
[Qt教程] 第31篇 网络(一)Qt网络编程简介 楼主 发表于 2013-8-28 17:04:17 | 查看: 515| 回复: 0 Qt网络编程简介 版权声明 该文章原创于作者yafeilin ...
- 【Qt入门第31篇】 网络(一)Qt网络编程简介
导语 从这一节开始我们讲述Qt网络应用方面的编程知识.在开始这部分知识的学习之前,大家最好已经拥有了一定的网络知识和Qt的编程基础.在后面的教程中我们不会对一个常用的网络名词进行详细的解释,对于不太了 ...
- Qt网络编程之实例一GET方式
看了两天的Qt网络编程,其实主要就是看了看QNetworkAccessManager.QNetworkRequest和QNetworkReply这三个类的主要内容.在之前,Qt网络编程主要是使用QHt ...
- qt android 网络编程实例,QT网络编程Tcp下C/S架构的即时通信实例
先写一个客户端,实现简单的,能加入聊天,以及加入服务器的界面. #ifndef TCPCLIENT_H #define TCPCLIENT_H #include #include #include # ...
- Qt网络编程——TCP
Qt网络编程--TCP 1. 概念 2. 服务器 3. 客户端 4. TCP服务器和客户端互传文件 5. 资源下载 1. 概念 TCP(Transmission Control Protocol, 传 ...
- Qt网络编程实战之HTTP服务器-安晓辉-专题视频课程
Qt网络编程实战之HTTP服务器-30196人已学习 课程介绍 设计了一个实用的HTTP服务器,基于Qt的网络框架实现.先详细介绍Qt的网络.IO.线程..自定义事件.配置文件等类库的 ...
- Qt网络编程电子白板
Qt网络编程电子白板 2018-08-11 08:44:04 天行健_地势坤 阅读数 915更多 分类专栏: Qt 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原 ...
- qt网络编程之使用cookie和ssl
文章目录 所使用的Qt版本:5.14.0 接收Cookies: 发送Cookies: 答案是:有7个(有多少个等号就有多少个cookie,每个cookie用 ; 分隔开来) 代码如下: 参考: 简 述 ...
- 第十四章:Qt网络编程
回顾: 第一章:Qt的概述 第二章:在Ubuntu编写第一个Qt程序 第三章:Qt的字符串和字符编码 第四章:Qt的信号和槽 第五章:Qt容器窗口(父窗口) 第六章:面向对象的Qt编程 第七章:Qt设 ...
最新文章
- 计算机事业单位专技岗考什么区别,事业单位管理和专技岗位有什么区别?哪个有前途?...
- 201421440008网络攻防实验三
- 计算机网络-基本概念(6)【网络层】-某PN和NAT
- Packet Capture -- android 手机抓包利器
- php刷新父页面,layui: 子iframe关闭/传值/刷新父页面
- 区间dp——cf1025D二叉搜索树的中序遍历好题!
- 被400万人痛骂!在中国火了22年的“洋网红”,套路彻底失灵了?
- SpringBoot日志logback-spring.xml分环境
- weblogic部署启动时报错(weblogic.application.ModuleException)
- 小甲鱼鱼c论坛python作业_[全套55讲]鱼C论坛小甲鱼Python课后题试题.doc
- 火星坐标系解密-iDesktopX空间数据处理
- 2021机器学习面试必考100题最新汇总(附答案详解)
- 如何给图片去底色?不用ps即可轻松搞定
- tolist()的作用
- 高等数学——曲线积分的计算(弧长)
- 《低风险投资之路》书中的精髓:低风险不等于低收益。
- 如何调整DOSBox窗口大小
- 拼多多后台x4.0监控mysql_11、ABPZero系列教程之拼多多卖家工具 拼团提醒功能页面实现...
- LOJ#6089 小 Y 的背包计数问题 - DP精题
- SRM 576 D2 L3:CharacterBoard2
热门文章
- 国内最值得关注的机器人底盘供应商
- 共享单车行业首起并购:永安行子公司收购哈罗单车
- java 转发url_Java转发重定向
- 数据库新增幂等操作_【概念篇】嘛是幂等性?
- 鸿蒙报名多久能用试纸测出来,怀孕多久可以用试纸测出来? 这几点不注意, 会影响准确率...
- Win8系统,Wifi连接受限
- oracle删除表空间后对应dbf文件没有删除
- [译] TensorFlow 教程 - 07 Inception 模型
- springboot某高校绩效考核管理设计与实现毕业设计源码012208
- 酒店计算机操作规程,酒店客房卫生操作规程5