Я задал вопрос о коде моего сервера клиенту, потому что у меня было много проблем, и кто-то сказал мне, что решение моих проблем состояло в том, чтобы сделать одноранговый чат, который я сейчас сделал.
Server.py
import socket, threading
host = "127.0.0.1"
port = 4000
s = socket.socket()
s.bind((host,port))
s.listen(5)
client_sockets = []
users = []
print("Listening")
def handle_client(conn):
while True:
try:
data = conn.recv(512)
for x in client_sockets:
try:
x.send(data)
except Exception as e:
print(e)
except:
pass
while True:
conn,addr = s.accept()
client_sockets.append(conn)
print("Connections from", addr[0], "on port",addr[1])
threading.Thread(target = handle_client,args = (conn,)).start()
Client.py
import socket,threading
host = "127.0.0.1"
port = 4000
s = socket.socket()
s.connect((host,port))
def echo_data(sock):
while True:
try:
data = sock.recv(512)
print(data)
except:
pass
while True:
threading.Thread(target=echo_data,args=(s,)).start()
msg = input("Enter your message : ")
s.send(msg.encode())
Проблема заключается в том, что, когда я запускаю клиент и пытаюсь поговорить с другим клиентом, сообщение не отправляется, если другоеклиент нажимает ввод, а также это подводит меня ко второй проблеме, когда клиенты отправляют друг другу сообщения, полученные в следующем формате:
b'hi'Enter your message :
Это ссылкана мой предыдущий вопрос