【问题标题】:Django / Python: Real time peer to peer chat messaging [closed]Django / Python:实时点对点聊天消息[关闭]
【发布时间】:2014-01-01 23:33:53
【问题描述】:

我使用 Django 和 Gunicorn 来支持我的前端 iOS 应用程序。到目前为止,我一直在使用简单的 GET、PUT、POST 请求从我的 iOS 应用程序向我的 Django 服务器发送和接收 json 数据,反之亦然。

这个设置很可靠,但是我想实现实时消息传递。刚开始时,我使用 APNS(Apple 的推送通知服务)将消息实时传递给收件人。这是我以前做的一个例子:

如果 UserA 向 UserB 发送消息,我将通过 JSON 将消息发送到 Django 服务器,在 Django 视图中处理它,使用pyAPNS - APNS 的 python 包装器,它会向 UserB(收件人)发送推送通知以及 256 字节的有效负载大小。这运作良好,但它也有一些缺点。

如果收件人选择禁用推送通知,那么他们将不会收到消息。当您在 iOS 应用中实现核心数据时,如果您缓存对象,这可能会非常混乱。

所以这给我留下了另一种选择。构建基于套接字的东西,可以与 Django 一起使用并将有效负载作为 JSON 发送。有什么想法吗?

【问题讨论】:

标签: python django sockets real-time


【解决方案1】:

你看过这里吗:

https://pypi.python.org/pypi/django-socketio/

或这里:

http://maxburstein.com/blog/realtime-django-using-nodejs-and-socketio/

或这里:

https://www.djangopackages.com/grids/g/websockets/

这是可以做到的。

另外,我不明白为什么必须在 django 本身内解析实时消息。你可以简单地实现一些 node.js 类型的服务器来为你处理这个,iOS 应用程序通过不同的 API 提取数据。这将起作用,除非您需要将消息传递数据附加到其他数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-04
    • 1970-01-01
    • 1970-01-01
    • 2014-02-19
    • 1970-01-01
    • 2020-10-10
    • 1970-01-01
    相关资源
    最近更新 更多