Swift 异步 DNS 解析器

一个用于异步 DNS 查询的 Swift 库。

概述

此库围绕 dnssd 框架和 c-ares C 语言库进行封装,提供了对 Swift 友好的 API 和数据结构。

用法

在您的 Package.swift 文件中添加包依赖项

.package(
    url: "https://github.com/apple/swift-async-dns-resolver", 
    .upToNextMajor(from: "0.1.0")
),

接下来,在您的目标中,将 AsyncDNSResolver 添加到您的依赖项

.target(name: "MyTarget", dependencies: [
    .product(name: "AsyncDNSResolver", package: "swift-async-dns-resolver"),
],

使用解析器

// import the package
import AsyncDNSResolver

// Initialize a resolver
let resolver = try AsyncDNSResolver()

// Run a query
let aRecords = try await resolver.queryA(name: "apple.com")

// Process the `ARecord`s
...