Ошибка при отправке TCP Python - неверный тип протокола для сокета - PullRequest
1 голос
/ 26 января 2020

Я пытаюсь отправить целочисленное значение с сервера, написанного в Python, клиенту, написанному в C, и когда я конвертирую значение int в htonl для отправки в C, вот так:

size = bytes(socket.htonl(len(input)))

возвращает эту ошибку: Протокол неверного типа для сокета для этой строки:

recv = connection.send(size)

Как я могу таким образом отправить целое значение клиенту в C или есть более простой способ?

1 Ответ

1 голос
/ 27 января 2020

В будущем, пожалуйста, предоставьте всю необходимую информацию: python версию, ОС, backtrace и, в данном случае, код, который создал сокет.

Эта статья, вероятно, объясняет, что происходит:

http://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/

Это означает, что у вас, вероятно, есть ошибка в коде вашего сервера и / или клиента, из-за которой соединение разрывается в неподходящий момент.

...