Python Socket Programming 服务器/客户端

一个简单的基于UDP协议的客户端和服务器应用的进程通信。

逻辑:

客户端会给服务器发送小写的英文字母,服务器接受后,把它转化成大写再返回给客户端,客户端输出这组数字。由于Python3已经明确区分了str类和bytes类,因此发送的字节。

服务器:

from socket import *

udp_server_socket = socket(AF_INET, SOCK_DGRAM)
udp_server_port = 9600
name = gethostname()
udp_server_socket.bind(('', udp_server_port))

while True:
    print('The Sever is ready to receive')
    # 这段代码会一直处于阻塞状态,除非收到了响应
    message, client_address = udp_server_socket.recvfrom(2048)
    print('Client Address:', str(client_address), 'Coming!')
    modified_message = message.upper()
    udp_server_socket.sendto(modified_message, client_address)

客户端

from socket import *

server_ip = '127.0.0.1'
server_port = 9600

udp_client_socket = socket(AF_INET, SOCK_DGRAM)
message = b'hello'
# 发送给服务器
udp_client_socket.sendto(message, (server_ip, server_port))

# 接受服务器的返回内容
modified_message, sever_address = udp_client_socket.recvfrom(2048)
print(modified_message)

udp_client_socket.close()

猜你喜欢

转载自www.cnblogs.com/crb912/p/9060670.html