给我一个代码是基于UDP协议的简单聊天程序的设计与实现
时间: 2023-11-17 16:06:06 浏览: 117
基于UDP协议的简单聊天系统设计与实现
以下是一个基于UDP协议的简单聊天程序的设计与实现的代码示例:
服务端代码:
```python
import socket
# 创建UDP套接字
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定服务端IP地址和端口号
server_address = ('127.0.0.1', 8888)
server_socket.bind(server_address)
while True:
# 接收客户端发送的数据
data, client_address = server_socket.recvfrom(1024)
print('Received message from {}: {}'.format(client_address, data))
# 发送响应数据给客户端
message = input('Enter message to send to {}: '.format(client_address))
server_socket.sendto(message.encode('utf-8'), client_address)
```
客户端代码:
```python
import socket
# 创建UDP套接字
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 客户端IP地址和端口号(可以随意指定,但必须与服务端不同)
client_address = ('127.0.0.1', 8889)
while True:
# 发送数据给服务端
message = input('Enter message to send to server: ')
client_socket.sendto(message.encode('utf-8'), ('127.0.0.1', 8888))
# 接收服务端发送的响应数据
data, server_address = client_socket.recvfrom(1024)
print('Received message from {}: {}'.format(server_address, data))
```
在这个聊天程序中,服务端和客户端均使用UDP套接字进行通信。服务端首先创建一个UDP套接字,并绑定到指定的IP地址和端口号。然后进入一个无限循环,等待接收客户端发送的数据。当服务端接收到客户端发送的数据后,它会打印出接收到的消息,并等待用户输入响应消息,然后将响应消息发送给客户端。
客户端创建一个UDP套接字,并随意指定一个IP地址和端口号,然后进入一个无限循环,等待用户输入要发送的消息。当客户端输入消息后,它会将消息发送给服务端,并等待服务端的响应。当客户端接收到服务端的响应后,它会打印出接收到的消息。
阅读全文