При выполнении проекта из учебника я столкнулся с проблемой, результат, которую я получаю от запуска кода в cmd, приведен ниже. Проект, который я пытаюсь подражать / делать, связан с сокетами, хотя, будучи новичком в этой библиотеке, я как бы незнаком с самой библиотекой и возможными ошибками. Далее у вас есть также Python коды.
команды cmd
Сервер
C:\Users\UmerSelmani\Desktop\chatapp>python server.py
C:\Users\UmerSelmani\Desktop\chatapp>
Клиент
C:\Users\UmerSelmani\Desktop\chatapp>python client.py
C:\Users\UmerSelmani\Desktop\chatapp>
Это сервер. код py
import socket
HEADERSIZE = 10
s= socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((socket.gethostname(),1235))
s.listen(5)
while True:
clientsocket, address = s.accept()
print (f"Connection from {address} has been established!")
msg= 'Welcome to the server!'
msg= f'{len(msg):<{HEADERSIZE}}' + msg
clientsocket.send(bytes(msg, 'utf-8'))
А это код client.py
import socket
HEADERSIZE = 10
s= socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((socket.gethostname(),1235))
while True:
full_msg = ''
new_msg= True
while True:
msg= s.recv(16)
if new_msg:
print(f'new message length: {msg[:HEADERSIZE]}')
msglen = int(msg[:HEADERSIZE])
new_msg = False
full_msg += msg.decode('utf-8')
if len(full_msg)-HEADERSIZE == msglen:
print ('full msg recvd')
print (full_msg[HEADERSIZE:])
new_msg = True
full_msg = ''
print(full_msg)