如何在Flask中通过HTTP和Websocket提供相同的端点?

问题描述 投票:0回答:1

我有一个端点,希望在HTTP(用于API)和websocket上都可以使用。

例如,可以通过套接字“发送”事件来添加新消息,该事件将在服务器上处理以处理请求(检查权限,创建必要的元素等)。

通过对/ api / messages /发出POST请求,这些相同的动作是可能的,并且行为相同。

由于具有相同的目的和结果,是否有一种有效的方法可以使用Flask和Flask-SocketIO使这两个作品相同?

谢谢你。

flask flask-socketio
1个回答
0
投票

[Socket.IO事件没有HTTP方法那样的请求和响应,因此输入和输出是不同的,因此无法对两者使用相同的功能。

但是您可以将操作的实际逻辑抽象为从HTTP路由和Socket.IO事件处理程序调用的辅助函数,如果您想同时通过HTTP和Socket.IO提供API,那么这实际上是很有意义的。

© www.soinside.com 2019 - 2024. All rights reserved.