python - 如何连接 2 个节点并使用 python 套接字通过它们发送数据?

标签 python sockets

我有一个 python 脚本,它创建一个变量 heading。我想将这个标题传输到无线自组织网络中的另一个节点。

我看了很多教程和例子,但我不太明白套接字的哪一端。

我想在我已经创建变量的节点上,我会编写类似这样的代码:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
s.connect((ipv4_address, 50086))
s.send(heading)

在接收端,我希望在同一端口上监听等待航向到达的东西:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
s.bind((ipv4_address, 50086))
while 1:
    data = client_socket.recv(512)

我不确定我的连接和绑定(bind)方式是否正确?

最佳答案

  • 服务器部分必须执行序列 socket()bind()listen()accept()。您的服务器部分当前不监听 套接字并且不接受 连接。此外,服务器部分应该从 accept 返回的套接字中recv 数据,但不是您正在收听的套接字。
  • 您需要确保heading 变量是一个字符串。否则你可能想使用 JSONpickle序列化您的对象的模块。

我建议您阅读 socket module examples在官方 Python 文档中。

关于python - 如何连接 2 个节点并使用 python 套接字通过它们发送数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16238422/

相关文章:

python - 为什么我得到 "Error while validating constraint None"?

python - 在 Python (Pycharm) 中导入 numpy,安装了 Anaconda

c# - SocketAsyncEventArgs 加密——SSL 与自定义预传输加密

Android AsyncTask 使用 Socket 发送/读取数据

c - 在 C 中过滤 Linux 上的 UDP 环回

java - DataInputStream 卡在流的末尾

python - for/if循环和python中变量的范围

python - 找出: In how many word a character is present in a given Sentence: PYTHON

python - 在python中顺序读取巨大的CSV文件

c - 通过非特权套接字在应用程序级别获取 ICMP 消息内容