问题标签 [python-socketio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
207 浏览

python - 如何在 python-socketio 服务器中使用自定义装饰器?

我想在事件处理程序上使用一些自定义装饰器,以使处理会话更加舒适。

这是我没有自定义装饰器的事件处理程序:

这是我的自定义装饰器活动:

问题是在应用@sess_decorator事件之后似乎根本没有触发。如果我更改装饰器的顺序,在调用我的装饰器之前会出现以下回溯失败:

似乎有一些图书馆设计问题?有没有其他方法可以完成相同的逻辑?

0 投票
2 回答
696 浏览

python - 如何安装特定版本的 socketio 4.4.0?

我对 fxcm 包有一些问题,我需要安装 python-socketio 4.4.0。但是,pip 不能这个版本。

0 投票
1 回答
1754 浏览

python - 一台设备上的 Python socketio badnamespaceerror 异常但在另一台设备上不起作用

大家好,我有以下代码,但由于某种原因,我不断收到以下错误,但它似乎在同事的电脑上工作。我们似乎无法弄清楚为什么这对我不起作用。

我们还仔细检查了我们正在使用 dir() 导入相同的 socketio

我已经尝试在 sio.connect 和 sio.emit 上指定命名空间,但仍然没有运气!

socketio.exceptions.BadNamespaceError: / is not a connected namespace.

0 投票
1 回答
70 浏览

python - engineio - Python3.7 异步语法错误

我在这一切方面都是一个新手。尝试对树莓派的另一个应用程序进行故障排除,一直遇到这个问题。我读过 async 现在是 Python 3.7 的保留字,不能更改 server.py 中的脚本。可能有一个简单的解决方案,但我太新手看不到它。任何指导将不胜感激。

0 投票
0 回答
671 浏览

reactjs - 如何将 python-socketio 与 django 和 reactjs 一起使用?

当我将 reactjs 与 django 一起使用时出现此错误:

wsgi.py ==>django 项目中的文件--

server.py==> 这是 django 项目应用程序中的文件

client.js==>通过调用连接函数开始连接

我应该怎么办?或推荐的任何其他库/方法。

提前致谢..

0 投票
1 回答
218 浏览

python-3.x - SocketIO、Python-SocketIO 和 Flask-SocketIO 不匹配的问题

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

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

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

javascript - 我需要一些关于在套接字 io 中实现客户端的建议

这一天我决定学习socket io,在学习了基础知识、实时应用程序示例和其他基本的客户端-服务器示例之后,我选择了一个改进它的项目(我通常是“边做边学”)

有一个使用socket io的网站。但是没有任何文档,所以我需要制作一份与他们一样工作的客户端的副本。当我深入研究他们的源代码时,我真的很难理解客户端是如何工作的。

我尝试了一些方法,例如调试源代码(在 chrome 开发工具上)或在控制台(localStorage.debug = '*';)上调试,以了解客户端发生了什么。我花了将近 3 到 4 周的时间才弄清楚这一点,但仍然遇到了麻烦,老实说,我有点沮丧:(

你有什么建议,我应该遵循什么样的方式?我很感激任何建议

我只想听某些事件,而不是全部
这是我正在努力解决的项目的链接https://duelbits.com
非常感谢

0 投票
1 回答
730 浏览

python - 如何在服务器和客户端上同步套接字 SID?

python_socketio 5.0.4在客户端和Flask-SocketIO 5.0.1服务器上。当客户端连接到服务器时,我想在客户端和服务器之间同步客户端的 SID。但是,当我在客户端打印 SID 时,它与在服务器上打印的 SID 不同。

有什么方法可以使服务器上的客户端 SID 与客户端上的 SID 相同?

这是客户端的代码:

这里是服务器:

0 投票
0 回答
336 浏览

javascript - socket.io 在本地主机和本地网络上工作,但在部署在服务器上时不工作

我正在使用服务器端的 python 实现和 JS 客户端构建一个 socket.io 应用程序。

当我在我的机器上测试我的应用程序时,一切正常,我可以连接多个客户端并与服务器交换数据。
该应用程序也可以工作,当我从本地网络中的其他机器访问它时,我将应用程序托管在我的桌面上并从我的笔记本电脑和智能手机访问它。

当我在我的一台服务器(Hetzner 的 VPS)上托管应用程序时,它无法正常工作。我仍然可以访问应用程序并加载 html/js 客户端。客户端还启动了与服务器的socket.io连接,我可以看到connect服务器上的事件。
但是没有更多的工作。我无法发出事件,也没有从服务器接收数据。

当我在浏览器中查看网络选项卡时,我可以看到几个 GET 请求(HTML、JS、CSS...),然后定期 GET 请求到<myserver>/socket.io/?EIO=4&transport=polling&t=NVPxxx.
这些 GET 请求中的每一个都会触发connect服务器上的事件,我猜连接从未真正完全发生过。

我的服务器代码如下所示:

服务器在处理 SSL 的 nginx 反向代理后面运行,并且(据我所知)正确配置为代理 websocket 连接。
为了确保我的代理配置不是问题的根源,我还直接运行了服务器。即使没有反向代理,我也有同样的问题。

客户端看起来像这样:

index.js 中的 JS 部分:

编辑---
这是来自服务器的日志。我连接了一个客户端,同时运行没有反向代理的服务器。当客户端连接时,服务器会向它们发送更新事件。在这个测试中,Server 还没有数据,所以 update 中的数据是空的。

客户端似乎没有在控制台上产生任何调试输出,即使localStorage.debug = '*';启用了调试的 socket.io 客户端也是如此。
这是 chrome 中网络选项卡的屏幕截图。 网络标签镶边

日志是一个接一个的,因此 ID 不匹配。

0 投票
1 回答
355 浏览

python - 预期的 ASGI 消息“websocket.accept”或“websocket.close”,但得到“http.response.start”

我想连接websockets,但在启动时出现错误。

uvicorn app:app --reload --ws websockets

要求

  • 操作系统:Linux Ubuntu 20.04 LTS

  • Python 3.8.6

  • 浏览器:Chrome 88.0.4324.182

  • 快速 API ==0.63.0

  • python-engineio ==4.0.0

  • python-socketio ==5.0.4

  • 小星星== 0.13.6

  • uvicorn ==0.13.3

  • 网络套接字==8.1

应用程序.py

反应应用

追溯