1

烧瓶和套接字的新手,并从教程中学习。我在让我的客户端和服务器通过套接字相互通信时遇到问题。接收常量 400 错误。我遇到了版本不匹配的常见问题,并且阅读了各种帖子。但是,在我看来,我有正确的依赖关系和版本。收到错误:

"The client is using an unsupported version of the Socket.IO or Engine.IO protocols"

许多来自库作者的响应的谷歌搜索和阅读问题表明这是一个常见的依赖问题。但是,对于我在虚拟环境中运行的内容,我的所有版本似乎都是正确的:

  • Flask-SocketIO 5.0.1
  • Python-EngineIO 4.0.0
  • Python-SocketIO 5.0.4
  • npm socket.io 3.10 我真的很想继续我的应用程序,但我真的很难弄清楚为什么我的客户端和服务器在看起来一切正常时不会通过套接字进行通信。任何帮助表示赞赏。运行 Debian Linux 仅供参考。
4

1 回答 1

0

确保您拥有所有内容的兼容版本。我不确定您使用的是什么 javascript 版本,但不同模块的版本很重要。

在此处输入图像描述 来源:https ://python-socketio.readthedocs.io/en/latest/intro.html

我正在使用的组合如下:

  • socket.io.js 2.2.0
  • python-engineio 3.13.2
  • python-socketio 4.6.0

您可以在我的 github 页面上尝试一个示例聊天应用程序。

于 2021-05-04T13:39:02.777 回答