socket實現UDP通訊(python)
阿新 • • 發佈:2022-05-10
UDP客戶端
from socket import * # 指定伺服器IP及埠號 server_name = '127.0.0.1' server_port = 12000 # 建立UDP客戶端, AF_INET表示底層網路使用IPv4,SOCK_DGRAM表示使用UDP協議 client_socket = socket(AF_INET, SOCK_DGRAM) message = input('Input lowercase sentense:') while message != 'end': # 將文字轉為位元組串,傳送給伺服器 client_socket.sendto(message.encode(), (server_name, server_port)) # 接受伺服器返回的資訊 modified_message, server_address = client_socket.recvfrom(2048) # 將返回報文從位元組轉為字串 print(server_address, ' say: ', modified_message.decode()) message = input('Input lowercase sentense:') client_socket.close()
UDP 服務端
from socket import * # 指定UDP伺服器開放的埠 server_port = 12000 # 使用IPv4及UDP server_socket = socket(AF_INET, SOCK_DGRAM) # 繫結埠號 server_socket.bind(('127.0.0.1', server_port)) print('The server is ready to receive') while(True): # 接收客戶端傳送的報文 message, client_address = server_socket.recvfrom(2048) # 報文由位元組轉為字串並轉大寫 modified_message = message.decode().upper() # 將修改的資訊轉為位元組,傳送給客戶端 server_socket.sendto(modified_message.encode(), client_address)