在Python中,可以使用socket库来实现长连接,以下是一个简单的示例:

创新互联-专业网站定制、快速模板网站建设、高性价比长洲网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式长洲网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖长洲地区。费用合理售后完善,十载实体公司更值得信赖。
1、导入所需的库:
import socket import threading
2、定义一个处理客户端请求的函数:
def handle_client(client_socket):
request = client_socket.recv(1024)
print(f"接收到的数据: {request.decode('utf8')}")
client_socket.send("数据已收到".encode('utf8'))
client_socket.close()
3、创建一个服务器套接字,并绑定到指定的IP地址和端口:
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('0.0.0.0', 9999))
server.listen(5)
print("服务器正在监听端口9999...")
4、使用一个无限循环来接受客户端连接,并为每个连接创建一个新的线程来处理:
while True:
client, addr = server.accept()
print(f"接受到来自{addr}的连接")
client_handler = threading.Thread(target=handle_client, args=(client,))
client_handler.start()
将以上代码片段组合在一起,完整的服务器代码如下:
import socket
import threading
def handle_client(client_socket):
request = client_socket.recv(1024)
print(f"接收到的数据: {request.decode('utf8')}")
client_socket.send("数据已收到".encode('utf8'))
client_socket.close()
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('0.0.0.0', 9999))
server.listen(5)
print("服务器正在监听端口9999...")
while True:
client, addr = server.accept()
print(f"接受到来自{addr}的连接")
client_handler = threading.Thread(target=handle_client, args=(client,))
client_handler.start()
运行此代码后,服务器将在端口9999上监听连接,当客户端连接到服务器时,服务器将接收客户端发送的数据,并向客户端发送确认消息,这个过程将持续进行,直到服务器关闭或客户端断开连接。