Python实现的TCP服务器
发布时间:2023-12-27 13:05:40
TCP服务器是一种常见的服务器类型,它使用TCP协议进行通信。Python提供了一个socket模块,可以用来创建TCP服务器。
以下是一个Python实现的TCP服务器的示例代码:
import socket
# 创建一个TCP socket对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定服务器的IP地址和端口号
server_address = ('localhost', 8888)
server_socket.bind(server_address)
# 监听连接
server_socket.listen()
print('服务器已启动,等待连接...')
while True:
# 等待客户端连接
client_socket, client_address = server_socket.accept()
print(f'与客户端 {client_address} 建立连接')
while True:
try:
# 接收客户端发送的数据
data = client_socket.recv(1024)
if data:
# 处理接收到的数据
message = data.decode('utf-8')
print(f'接收到客户端数据: {message}')
# 发送响应数据给客户端
response = f'你好,客户端 {client_address}'
client_socket.sendall(response.encode('utf-8'))
else:
# 客户端关闭连接
print(f'与客户端 {client_address} 的连接已断开')
break
except Exception as e:
print(f'与客户端 {client_address} 的连接发生异常: {str(e)}')
break
# 关闭客户端socket连接
client_socket.close()
# 关闭服务器socket连接
server_socket.close()
运行以上代码,将会启动一个TCP服务器,监听本地端口8888,并打印出服务器已启动的提示信息。当有客户端连接时,服务器会打印连接建立的信息,并接收客户端发送的数据并进行处理。然后向客户端发送一个响应数据。当客户端关闭连接时,服务器会打印连接断开的信息,并继续等待下一个客户端连接。
你可以通过telnet命令或其他TCP客户端程序连接到该服务器,并发送数据进行测试。
注意:在实际开发中,你可能需要对以上代码进行适当的优化和异常处理。
