内容表

上一话题

QDnsHostAddressRecord

下一话题

QDnsMailExchangeRecord

QDnsLookup

QDnsLookup class represents a DNS lookup. 更多

Inheritance diagram of PySide2.QtNetwork.QDnsLookup

详细描述

QDnsLookup uses the mechanisms provided by the operating system to perform DNS lookups. To perform a lookup you need to specify a name and type 然后援引 lookup() 槽。 finished() 信号会被发射当完成时。

例如,可以确定给定域的 XMPP 聊天客户端应该连接到哪些服务器采用:

void MyObject::lookupServers()
{
    // Create a DNS lookup.
    dns = new QDnsLookup(this);
    connect(dns, SIGNAL(finished()),
            this, SLOT(handleServers()));
    // Find the XMPP servers for gmail.com
    dns->setType(QDnsLookup::SRV);
    dns->setName("_xmpp-client._tcp.gmail.com");
    dns->lookup();
}
											

一旦请求完成,可以处理结果采用:

void MyObject::handleServers()
{
    // Check the lookup succeeded.
    if (dns->error() != QDnsLookup::NoError) {
        qWarning("DNS lookup failed");
        dns->deleteLater();
        return;
    }
    // Handle the results.
    const auto records = dns->serviceRecords();
    for (const QDnsServiceRecord &record : records) {
        ...
    }
    dns->deleteLater();
}
											

注意

若仅仅希望查找与主机名关联的 IP 地址 (或与 IP 地址关联的主机名),应该使用 QHostInfo 代替。

class QDnsLookup ( type , name [ , parent=None ] )

QDnsLookup(type, name, nameserver[, parent=None])

QDnsLookup([parent=None])

param type

Type

param parent

QObject

param name

unicode

param nameserver

QHostAddress

构造 QDnsLookup object for the given type and name and sets parent 作为父级对象。

构造 QDnsLookup object for the given type , name and nameserver and sets parent 作为父级对象。

构造 QDnsLookup object and sets parent 作为父级对象。

type property will default to A .

PySide2.QtNetwork.QDnsLookup. Error

指示在 DNS 查找处理过程中发现的所有可能的错误条件。

常量

描述

QDnsLookup.NoError

没有错误条件。

QDnsLookup.ResolverError

there was an error initializing the system’s DNS resolver.

QDnsLookup.OperationCancelledError

查找被中止使用 abort() 方法。

QDnsLookup.InvalidRequestError

请求的 DNS 查找无效。

QDnsLookup.InvalidReplyError

由服务器返回的回复无效。

QDnsLookup.ServerFailureError

服务器遭遇内部故障当处理请求时 (SERVFAIL)。

QDnsLookup.ServerRefusedError

服务器出于安全或策略原因拒绝处理请求 (REFUSED)。

QDnsLookup.NotFoundError

请求的域名不存在 (NXDOMAIN)。

PySide2.QtNetwork.QDnsLookup. Type

指示所履行的 DNS 查找类型。

常量

描述

QDnsLookup.A

IPv4 地址记录。

QDnsLookup.AAAA

IPv6 地址记录。

QDnsLookup.ANY

任何记录。

QDnsLookup.CNAME

典型名称记录。

QDnsLookup.MX

邮件交换记录。

QDnsLookup.NS

名称服务器记录。

QDnsLookup.PTR

指针记录。

QDnsLookup.SRV

服务记录。

QDnsLookup.TXT

文本记录。

PySide2.QtNetwork.QDnsLookup. abort ( )

中止 DNS 查找操作。

若查找已完成,什么都不做。

PySide2.QtNetwork.QDnsLookup. canonicalNameRecords ( )
返回类型

Returns the list of canonical name records associated with this lookup.

PySide2.QtNetwork.QDnsLookup. error ( )
返回类型

Error

PySide2.QtNetwork.QDnsLookup. errorString ( )
返回类型

unicode

PySide2.QtNetwork.QDnsLookup. finished ( )
PySide2.QtNetwork.QDnsLookup. hostAddressRecords ( )
返回类型

Returns the list of host address records associated with this lookup.

PySide2.QtNetwork.QDnsLookup. isFinished ( )
返回类型

bool

返回回复是已完成还是被中止。

PySide2.QtNetwork.QDnsLookup. lookup ( )

履行 DNS 查找。

finished() signal is emitted upon completion.

PySide2.QtNetwork.QDnsLookup. mailExchangeRecords ( )
返回类型

Returns the list of mail exchange records associated with this lookup.

The records are sorted according to RFC 5321 , so if you use them to connect to servers, you should try them in the order they are listed.

PySide2.QtNetwork.QDnsLookup. name ( )
返回类型

unicode

另请参阅

setName()

PySide2.QtNetwork.QDnsLookup. nameChanged ( name )
参数

name – unicode

PySide2.QtNetwork.QDnsLookup. nameServerRecords ( )
返回类型

Returns the list of name server records associated with this lookup.

PySide2.QtNetwork.QDnsLookup. nameserver ( )
返回类型

QHostAddress

另请参阅

setNameserver()

PySide2.QtNetwork.QDnsLookup. nameserverChanged ( nameserver )
参数

nameserver QHostAddress

PySide2.QtNetwork.QDnsLookup. pointerRecords ( )
返回类型

Returns the list of pointer records associated with this lookup.

PySide2.QtNetwork.QDnsLookup. serviceRecords ( )
返回类型

Returns the list of service records associated with this lookup.

The records are sorted according to RFC 2782 , so if you use them to connect to servers, you should try them in the order they are listed.

PySide2.QtNetwork.QDnsLookup. setName ( name )
参数

name – unicode

另请参阅

name()

PySide2.QtNetwork.QDnsLookup. setNameserver ( nameserver )
参数

nameserver QHostAddress

另请参阅

nameserver()

PySide2.QtNetwork.QDnsLookup. setType ( arg__1 )
参数

arg__1 Type

另请参阅

type()

PySide2.QtNetwork.QDnsLookup. textRecords ( )
返回类型

Returns the list of text records associated with this lookup.

PySide2.QtNetwork.QDnsLookup. type ( )
返回类型

Type

另请参阅

setType()

PySide2.QtNetwork.QDnsLookup. typeChanged ( type )
参数

type Type