django rest框架和通道2的简单资源绑定和消费者混合

drf-channels的Python项目详细描述


DRF频道

https://travis-ci.org/iamriel/drf-channels.svg?branch=master

drf通道提供了一个简单的django通道绑定和使用者 可用于自动侦听和发送到组的MIXIN 每次创建/更新/删除资源时。

它需要python>;=3.5、channels>;=2.0、django>;=1.11和django rest framework 3.x

这就像通道1.x的端口Data_BindingChannels API 几乎没有区别。

发送到客户端的数据基于序列化程序类 提供。

它是如何工作的?

api公开了一个ResourceBinding类,该类保存模型、序列化程序类和使用者类。 consumer类必须是channels和 有一个^ {TT3}$MIXIN。

ResourceBinding类绑定pre_savepre_deletepost_savepost_delete信号。 对你的模特来说。然后,这些信号将发送到侦听流的相应消费者组。

首先要做的是连接到消费者并传递要订阅的操作 通过url参数。

例如,您想要订阅create和update操作Jobresource(model), 频道路径是/jobs/,您将连接到下面的websocket, 如果您正在使用Channels Websocket Wrapper

constwebSocketBridge=newchannels.WebSocketBridge()webSocketBridge.connect('/jobs/?subscribe=create,update')

然后需要在WebSocketBridge上添加一个侦听器来接收消费者发送的消息 通过信号。

webSocketBridge.socket.addEventListener('message',function(event){})

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
无法在Netbeans 8.2 JDK8u231中创建java Maven项目(Web应用程序)   java如何以设定的时间间隔生成随机数?   java从socket和inputStream的慢速读取   spring SCORM:Java中基于Web的SCORM播放器   Java将函数传递给方法   java绑定通用服务及其实现和子类型   java如何在运行时从选择列表框中动态选择选项?爪哇硒   java Selenium WebDriver什么是“Selenium客户端和WebDriver语言绑定”   elasticsearch需要elasticsearch高级Java客户端更新ByQueryRequest API帮助   JAVA哈希表查找最大值   WSDL操作中的java soapAction属性为空   java访问封闭类或父类方法的一般方法   eclipse在java中运行带有SeleneTestCase的ANT。lang.NoClassDefFoundError   java Hazelcast不会在节点启动时填充ReplicatedMap   如何在Java中从excel中读取特定行?   html JAVA将本地时间(GMT+8)转换为UTC时间   java将自定义端点添加到Spring数据REST存储库中,并以大摇大摆的方式显示   java计算未来位置