我用Python编写了一个使用UDP套接字的小型聊天室应用程序。我已经将它设置为用户选择用户名然后向服务器发送消息的位置。然后,服务器会将消息广播到每个连接的客户端。我设法让服务器正常工作,客户机能够向服务器发送消息。问题是服务器没有向连接的其他客户端广播消息。在
以下是服务器代码:from socket import *
import socket
port = 1234
localhost='127.0.0.1'
#Create a socket
try :
s = socket.socket(AF_INET, SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
print ('Socket created')
except socket.error:
print ('Error creating socket.')
sys.exit()
#Bind the socket to port and localhost.
try:
s.bind((localhost, port))
except socket.error:
print ('Error while binding.')
sys.exit()
print ('Bind complete.')
while 1:
# receive data from client (data, addr)
d = s.recvfrom(2048)
data = d[0]
addr = d[1]
if not data:
break
print('Client connected at ' + addr[0] + ':' + str(addr[1]))
print('Message[' + addr[0] + ':' + str(addr[1]) + '] - ' +
data.strip().decode("utf-8"))
s.close()
客户代码:
^{pr2}$
有什么建议吗?在