在django rest框架中实现推送通知的准确和最合适的方法。 DRF文档没有很好地解释它。 帮助我解决这个问题
答案 0 :(得分:2)
Django REST框架用于使用内置的django功能在django中创建API,以检索请求和提供响应。
Django本身不支持任何允许将推送通知发送到客户端的协议,因此DRF也不会这样做。
要创建推送通知,您必须使用websockets,有一些第三方软件包向django添加了websockets的支持。其中一个是django-websocket-redis
答案 1 :(得分:2)
如果您正在网上寻找推送通知(使用网络套接字),您可以尝试使用Firebase Cloud messaging(FCM,Firebase为free且具有特定使用阈值。您需要的是向您的django服务器添加代码以请求Firebase发送通知。
如果您正在寻找移动设备上的推送通知,django-push-notifications包看起来不错,它甚至可以支持DRF跟踪设备。在Android上,这也将使用FCM。
答案 2 :(得分:1)
django-push-notifications是您要寻找的。它很简单,只需几行代码即可实现。它可用于所有android,iOS和网络推送通知。
答案 3 :(得分:1)
如果您打算使用 WebSocket 来实现您自己的通知,您可以查看channels
答案 4 :(得分:0)
为此,我个人最喜欢的是:Django Notification!和Django Pushy!
其他软件包:django-push-notifications Django Activity Stream
尝试使用django-instapush软件包。可通过pip轻松安装。这支持所有sql数据库以及通过mongoengine来存储设备信息的mongoDB。它具有可用于存储设备信息的内置模型,因此可以立即使用。这是little tutorial中有关使用django instapush发送django推送通知的信息。
您还可以使用:
https://pypi.org/project/django-sns-mobile-push-notification/
您还可以尝试使用其他一些推送提供程序。 Infobip推送有一些新功能,例如,您可以按用户的位置跟踪用户,并在用户访问某些区域时发送推送