用 struct.pack 封装内置套接字的简单模块。
项目描述
结构化插座
一个简单的模块,用 struct.pack 封装内置套接字,以便接收方可以预见接收到的数据量,以防止粘包。
Repository:https ://github.com/origamizyt/StructuredSocket (相信不用源码也能看懂机制。)
安装
这个模块在 PyPI 上可用。
pip install structsock
或者您也可以从源代码 .tar.gz 安装。
python setup.py install
用法
该模块中的公开接口与内置模块非常相似socket,只是替换socket.socket为StructuredSocket:
# server side
from structsock import StructuredSocket
s = StructuredSocket()
s.bind(('0.0.0.0', 5000))
s.listen(5)
c, addr = s.accept()
c.send(b'data')
c.close()
s.close()
请注意,返回的客户端套接字也是StructuredSocket.
# client side
from structsock import StructuredSocket
c = StructuredSocket()
c.connect(('127.0.0.1', 5000))
data = c.recv() # different, no bufsize
print(data.decode())
c.close()
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
structsock-1.2.0.tar.gz
(2.7 kB
查看哈希)
内置分布
structsock-1.2.0-py3-none-any.whl
(3.6 kB
查看哈希)
关
structsock-1.2.0- py3 -none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 3167b7399b96ba2fdc0bea31f9621db2487b43e2cfb96acf23384480c7632718 |
|
| MD5 | 595925042941ab994dafc5d28bb52a8e |
|
| 布莱克2-256 | cb7733908e923f3d8193b35f47f7d49c4598c5afa2587bb0b9f5bcb992eafe78 |