Skip to main content

网络连接socket封装, 支持心跳包, 支持长连接, 断线检测, 不粘包

Project description

网络连接socket封装

支持心跳包, 支持长连接, 断线检测, 不粘包

测试代码:
if __name__ == '__main__':
import threading

from zsocket.commonlib.data_pack import data_pack
from zsocket.tcp.server import Server
from zsocket.tcp.client import Client


def server_client_connect_fun(client):
print('服务端收到连接', client.remote_addr)
server.close_listen()
threading.Thread(target=send_data, args=(client,)).start()


def server_client_close_fun(client, close_state):
print('服务端断开连接', client.remote_addr, close_state)


def send_data(client):
while client.is_connect:
text = input('请输入要发送的数据:')

if not client.is_connect:
return

if not text or text.lower() == 'q':
client.close()
return

client.send(text.encode())
client.send_text(text)
client.send_pack_arg(text, 1, 2, 3)


def client_connect_fun(client):
print('客户端连接', client.local_addr)


def client_close_fun(client, close_state):
print('客户端断开连接', client.local_addr, close_state)


def client_get_data_fun(client, data):
print('客户端收到数据', data)


def client_get_text_fun(client, text):
print('客户端收到文字', text)


def client_get_pack_fun(client, pack):
print('客户端收到包', pack.data, pack.a1, pack.a2, pack.a3)


server = Server()
server.password = '123'
server.set_client_connect_callback(server_client_connect_fun)
server.set_client_close_callback(server_client_close_fun)
server.listen(7777)

client = Client()
client.password = '123'
client.set_connect_callback(client_connect_fun)
client.set_close_callback(client_close_fun)
client.set_get_data_callback(client_get_data_fun)
client.set_get_text_callback(client_get_text_fun)
client.set_get_pack_callback(client_get_pack_fun)
client.connect('localhost', 7777)


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zsocket-1.0.3.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

zsocket-1.0.3-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file zsocket-1.0.3.tar.gz.

File metadata

  • Download URL: zsocket-1.0.3.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for zsocket-1.0.3.tar.gz
Algorithm Hash digest
SHA256 b6e461a68336fed0c3628b15306ab934584dac3a6e1202838c8b11faaf92d71c
MD5 74b820bfe59d8b1d3d998d330fe10dca
BLAKE2b-256 0a44d37fe79d0c9c7c80c57175dcda4c9630a8e036d8343634afe59101faf3c1

See more details on using hashes here.

File details

Details for the file zsocket-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: zsocket-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 16.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for zsocket-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 efb6ebcd214877c56832dc90aaf6ea53ad14ab5795e3992907cad42f4138d5c9
MD5 147ed72242c897d3302f0f9e8776641f
BLAKE2b-256 e70f97df0cc47d1efa9ac0303f9d4382b0ee4fd2132bfffadb63cad15c364786

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page