Flask-SocketIO 简单使用指南,Python面试宝典

本文详细介绍了Flask-SocketIO的使用,包括发送消息、广播、房间管理和错误处理。展示了如何利用自定义事件、命名空间以及发送回复消息。还提到了广播消息、房间功能以及错误处理机制,是Python后端开发者面试准备的重要参考资料。
摘要由CSDN通过智能技术生成

@socketio.on(‘message’)

def handle_message(message):

print('received message: ’ + message)

上面的示例使用字符串消息。另一种类型的未命名事件使用 JSON 数据:

@socketio.on(‘json’)

def handle_json(json):

print('received json: ’ + str(json))

最灵活的方式是使用自定义事件名称,在开发过程中最常用的也是这种方式。

事件的消息数据可以是字符串,字节,整数或 JSON:

@socketio.on(‘my event’)

def handle_my_custom_event(json):

print('received json: ’ + str(json))

自定义命名事件也可以支持多个参数:

@socketio.on(‘my event’)

def handle_my_custom_event(arg1, arg2, arg3):

print('received args: ’ + arg1 + arg2 + arg3)

Flask-SocketIO 支持 SocketIO 命名空间,允许客户端在同一物理套接字上复用多个独立连接:

@socketio.on(‘my event’, namespace=‘/test’)

def handle_my_custom_namespace_event(json):

print('received json: ’ + str(json))

如果未指定名称空间,'/'则使用具有名称的默认全局名称空间 。

对于装饰器语法不方便的情况,on_event可以使用该方法:

def my_function_handler(data):

pass

socketio.on_event(‘my event’, my_function_handler, namespace=‘/test’)

客户端可以请求确认回叫,确认收到他们发送的消息。处理函数返回的任何值都将作为回调函数中的参数传递给客户端:

@socketio.on(‘my event’)

def handle_my_custom_event(json):

print('received json: ’ + str(json))

return ‘one’, 2

在上面的示例中,将使用两个参数调用客户端回调函数,'one'2。如果处理程序函数未返回任何值,则将调用客户端回调函数而不带参数。

发送消息

如上一节所示定义的 SocketIO 事件处理程序可以使用send()emit() 函数将回复消息发送到连接的客户端。

以下示例将收到的事件退

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值