webmen tcp协议示例代码
时间: 2024-05-10 21:18:14 浏览: 4
以下是使用 Python 语言实现的一个简单的 TCP 客户端和服务器示例代码:
#### 服务器端代码
```python
import socket
# 创建 socket 对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 设置监听端口号
port = 9999
# 绑定端口号
server_socket.bind(('localhost', port))
# 开始监听
server_socket.listen(5)
print('服务器已启动,等待客户端连接......')
# 循环等待客户端连接
while True:
# 接受客户端连接
client_socket, addr = server_socket.accept()
print('已连接客户端:', addr)
# 向客户端发送欢迎消息
message = '欢迎连接到服务器!'
client_socket.send(message.encode())
# 循环接收客户端消息
while True:
# 接收客户端消息
data = client_socket.recv(1024).decode()
if not data:
break
print('客户端发来消息:', data)
# 回复客户端消息
message = '服务器收到消息:' + data
client_socket.send(message.encode())
# 关闭客户端连接
client_socket.close()
print('客户端已断开连接。')
```
#### 客户端代码
```python
import socket
# 创建 socket 对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 设置服务器地址和端口号
server_address = ('localhost', 9999)
# 连接服务器
client_socket.connect(server_address)
# 接收欢迎消息
data = client_socket.recv(1024).decode()
print('服务器发来消息:', data)
# 循环发送消息
while True:
# 输入消息
message = input('请输入消息:')
if not message:
break
# 发送消息
client_socket.send(message.encode())
# 接收服务器回复
data = client_socket.recv(1024).decode()
print('服务器发来消息:', data)
# 关闭连接
client_socket.close()
print('连接已关闭。')
```
这个示例代码中,服务器会监听本地的 9999 端口,等待客户端的连接。一旦有客户端连接,服务器会向客户端发送欢迎消息,并开始循环接收客户端的消息,处理完毕后回复客户端。客户端会连接到服务器,并接收欢迎消息。然后,它会循环读取用户输入,将输入的消息发送给服务器,并等待服务器回复。如果用户输入空消息,客户端会关闭连接。