服务端
import socketserver
ip = '127.0.0.1'
port = 8080
ADDR = (ip, port)
class MyHandler(socketserver.BaseRequestHandler):
def handle(self):
# print(self.client_address)#客户端的IP地址及端口
# print(self.request)#是一个元组,第一个是数据,第二个是套接字对象
data = self.request[0]
print('客户端信息:',data)
self.request[1].sendto(data.upper(),self.client_address)
if __name__ == '__main__':
s = socketserver.ThreadingUDPServer(ADDR,MyHandler)
s.serve_forever()
客户端
import socket
# udp协议没有粘包问题
server = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
ip_port=('127.0.0.1',8080)
while True:
msg = input('>>>').strip()
server.sendto(msg.encode('utf-8'),ip_port)
back_msg,addr = server.recvfrom(1024)
print(back_msg)
server.close()