Я пытаюсь создать простую клиентскую и серверную программу обмена сообщениями в python, и я продолжаю получать ошибку "TypeError:" str "не поддерживает интерфейс буфера" и даже не знаю, что это значит. Я начинаю с питоном по большей части и полным начинающим с сетью.
Я предполагаю, что по какой-то причине я не могу отправить строковые данные? Если это так, как я могу отправить строку?
Для справки, код примера, который я получил от этого, был для python 2.x, и я делаю это в Python 3, поэтому я считаю, что это еще один изгиб для разработки из перехода версии. Я искал вокруг по той же проблеме, но не могу понять, как применить те же самые исправления к моей ситуации.
Здесь начальный код для сервера:
import socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind(("", 5000))
server_socket.listen(5)
print("TCP Server Waiting for client on port 5000")
while 1:
client_socket, address = server_socket.accept()
print("TCP Server received connect from: " + str(address))
while 1:
data = input("SEND(Type q or Q to quit):")
if(data == 'Q' or data == 'q'):
client_socket.send(data)
client_socket.close()
break;
else:
client_socket.send(data)
data = client_socket.recv(512)
if(data == 'q' or data == 'Q'):
client_socket.close()
break;
else:
print("Received: " + data)