Невозможно отправить через сокет - PullRequest
0 голосов
/ 01 июля 2018

Моя проблема в том, что когда я пытаюсь отправить некоторые данные, используя sendall (data), выдается ошибка

db.connected_users[indexx].sendall(usr+' - '+data)
TypeError: must be str, not bytes

Это даже происходит, когда я .encode () отправляю данные. db.connected_users - это словарь с парой ключей «username»: conn, где conn - результат conn, addr = s.accept ()

Это очень странно, и я не понимаю, как это исправить. Если требуется дополнительная информация, пожалуйста, спросите в комментариях. Спасибо.

1 Ответ

0 голосов
/ 01 июля 2018

для преобразования bytes объекта в str вам необходимо декодировать , а не кодировать его, например:

bytes_data = b"some data"
string_data = bytes_data.decode('utf-8')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...