跳转到主要内容

适用于asyncio的Happy Eyeballs

项目描述

aiohappyeyeballs

CI Status Documentation Status Test coverage percentage

Poetry Ruff pre-commit

PyPI Version Supported Python versions License


文档: https://aiohappyeyeballs.readthedocs.io

源代码: https://github.com/aio-libs/aiohappyeyeballs


Happy Eyeballs (RFC 8305)

用例

这个库旨在允许与Happy Eyeballs (RFC 8305) 连接,当您已经有了addrinfo列表而不是DNS名称时。

loop.create_connection()的stdlib版本仅在您传入一个未解析的名称时才有效,这在使用DNS缓存或通过其他方法(如zeroconf)解析名称时并不合适。

安装

通过pip(或您喜欢的包管理器)安装此库。

pip install aiohappyeyeballs

许可

aiohappyeyeballs遵循与cpython相同的许可协议。

示例用法

addr_infos = await loop.getaddrinfo("example.org", 80)

socket = await start_connection(addr_infos)
socket = await start_connection(addr_infos, local_addr_infos=local_addr_infos, happy_eyeballs_delay=0.2)

transport, protocol = await loop.create_connection(
    MyProtocol, sock=socket, ...)

# Remove the first address for each family from addr_info
pop_addr_infos_interleave(addr_info, 1)

# Remove all matching address from addr_info
remove_addr_infos(addr_info, "dead::beef::")

# Convert a local_addr to local_addr_infos
local_addr_infos = addr_to_addr_infos(("127.0.0.1",0))

致谢

此包包含来自cpython的代码,并遵循与cpython相同的许可协议。

此包使用Copierbrowniebroke/pypackage-template项目模板创建。

项目详情


下载文件

下载适合您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。

源代码分发

aiohappyeyeballs-2.4.3.tar.gz (21.8 kB 查看哈希值)

上传时间 源代码

构建分发

aiohappyeyeballs-2.4.3-py3-none-any.whl (14.7 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面