更好的网络库。
项目描述
ButterflyNet是一个基于asyncio构建的服务器端安全网络框架,内置所有功能。
ButterflyNet中的所有代码都默认设计为异步的,为非异步代码(如外部库)做出了特殊处理。
由于大量使用asyncio,此模块不支持Python 3.4之前的版本。使用回溯tulip库可能运行它,但不会提供官方支持。
为什么选择ButterflyNet?
ButterflyNet的设计有以下主要原因
套接字是低级别的;我个人不喜欢它们,因为它们不是最容易使用的。
Twisted的学习曲线很陡峭,有很多冗余。
asyncio网络很好,但它非常放手 - ButterflyNet附带了一个完整的网络套件所需的所有内容。
所有现有的库都不是设计安全的。您可以通过SSLContexts来解决这个问题 - 然而,ButterflyNet默认通过服务器上的安全设置强制使用TLS。
入门指南
ButterflyNet可以从PyPI下载: pip install ButterflyNet
限制
在大多数网络框架中,您可以选择TCP或UDP。然而,ButterflyNet设计为基于持久、TLS认证和加密的连接,其中UDP具有以下特点:
没有持久连接
不可靠的TLS安全性
这意味着ButterflyNet将锁定在TCP上。OpenSSL 确实 支持 DTLS,但尚未计划提供支持。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
ButterflyNet-1.1.0.tar.gz (10.8 kB 查看哈希值)
构建分发
ButterflyNet-1.1.0-py3.5.egg (30.3 kB 查看哈希值)
ButterflyNet-1.1.0-py3.4.egg (30.3 kB 查看哈希值)
ButterflyNet-1.1.0-py3-none-any.whl (14.0 kB 查看哈希值)
关闭
ButterflyNet-1.1.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8cbd20a4ab5fc2a3dbd02b5d1d6bcab908886dca54a70706b2fd7a6e7906f083 |
|
MD5 | 66472163053eb14f8f31895bad4f06e5 |
|
BLAKE2b-256 | e1aa2a1e06f5ef24a2c327b54463d427f29b4218c0d363f6651af1f91ba74d4d |
关闭
ButterflyNet-1.1.0-py3.5.egg的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7c63bf681e2befdccbe2dc1276a7a430ec50d856fa699dfce8b74f220e1f4bcb |
|
MD5 | 4e34e313f7d97a45b879fb5acb6a2915 |
|
BLAKE2b-256 | a0e54d2b0a52441fd3d8d02e0b9ff8d9be356ecfa10308855dcf57e65a928a1b |
关闭
ButterflyNet-1.1.0-py3.4.egg的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d60f85944bc670cd9aee70441edfc5b5286243d7e2e4ac3a6346b0b6a0c3c3f9 |
|
MD5 | 3e0429f15a0cb7a18e1811710fad6955 |
|
BLAKE2b-256 | cd86d70f39611b5b6f5f84048b0f35551b65f933ef2aa8c22c0c581bc2609598 |
关闭
ButterflyNet-1.1.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 06a0ad1ecb2addfa563f0b4db3c6189a33808b22aea780d411d9f3e9bc03613b |
|
MD5 | 197ef457492f5cae2e338ef1372c0667 |
|
BLAKE2b-256 | c512dc64296fca6aebfe3af4f2c4e0e7367cf5827a4c51f0f964353d5d0ab4d2 |