【问题标题】:python socket not sending data in windowspython socket不在windows中发送数据
【发布时间】:2018-06-16 09:43:08
【问题描述】:

我试图调试用于在 actionscript 中打开 ssl 套接字的库,但遇到了数据未通过打开的套接字发送的问题。我能够使用这个脚本从 python 复制它:-

import socket
v=socket.socket()
v.connect(("127.0.0.1",443))
x='\x16\x03\x01\x00W\x01\x00\x00S\x03\x01O}\xb0\xb1Z\x9cv\x94\xd0\xec\x8e\xfc\xbd\xeb\xb9\x80isu\x19\x19\xa5\xd1o\xe1l\xcaU\xbb\xcb\xb6\xb5 \xf3&\xf6\xa0\xb3\xe6\x80\xb8\xdex\xa8\xdb)?\x91{\x1d\x03\xb0d\x1a1\xf9&\xedU\x96\x1f\xea|#\xb4\x00\x0c\x005\x00\n\x00/\x00\x05\x00\x04\x00\t\x01\x00'
v.send(x)

我有另一个 python 脚本监听port 443 上的连接,我发送的任何其他字符串,它都能接收它,但不是那个字符串。第一次通过socket发送什么有什么限制吗?

我正在使用 Windows 10 Insider Preview 最新更新。我没有尝试在任何其他操作系统上重现该问题。

【问题讨论】:

    标签: python windows sockets ssl windows-10


    【解决方案1】:

    windows 似乎正在监视所有套接字连接,我假设它正在检测 ssl 连接,因为通过套接字发送的数据只是一个简单的客户端问候,没有扩展数据。即使在 hello 中指定没有扩展数据是允许的,在这种情况下监控它的程序也会失败。在消息末尾添加\x00\x00指定扩展数据长度为0并将消息开头的\x00W更改为\x00Y后,它可以正常工作。

    我已经检查了以前 Windows 版本中的原始代码,它工作正常。

    【讨论】:

      猜你喜欢
      • 2016-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-11
      • 2015-10-27
      • 1970-01-01
      • 2020-07-25
      • 1970-01-01
      相关资源
      最近更新 更多