适用于asyncio的Happy Eyeballs
项目描述
aiohappyeyeballs
文档: https://aiohappyeyeballs.readthedocs.io
源代码: https://github.com/aio-libs/aiohappyeyeballs
用例
这个库旨在允许与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相同的许可协议。
此包使用Copier和browniebroke/pypackage-template项目模板创建。
项目详情
下载文件
下载适合您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。
源代码分发
aiohappyeyeballs-2.4.3.tar.gz (21.8 kB 查看哈希值)
构建分发
aiohappyeyeballs-2.4.3-py3-none-any.whl (14.7 kB 查看哈希值)