【问题标题】:Make Django REST framework and Django Channels play nicely让 Django REST framework 和 Django Channels 玩得很好
【发布时间】:2016-07-14 12:14:30
【问题描述】:

我想让 Django REST 框架与 Web 套接字一起工作,并遇到了 Django Channels。我可以在 REST 框架之上构建通道吗?

我读到here 说它是 WIP,但是我想知道是否有一种简单的“轻松”方法可以将两者联系在一起。任何建议都值得赞赏,我对 Django 还是很陌生。

【问题讨论】:

    标签: django django-rest-framework django-channels


    【解决方案1】:

    取决于你想做什么,如果你正在寻找实时创建 API 的端点,现在是不可能的。

    如果在 Django 之上序列化消息,有一个项目https://github.com/linuxlewis/channels-api

    【讨论】:

    • 提供了一个很好的例子 - 不幸的是还没有内置权限功能。
    【解决方案2】:

    Roy van der Valk - 到目前为止你运气好吗?

    我已经成功启动了我们的平台,该平台使用传统的 Django 视图、Django-Rest-Framework 视图和渠道“消费者”。

    有一个名为 Daphne 的 guncorn/wsgi 替代品 - 它将请求本身(无论是 http/websocket 等)减轻到正确的响应处理程序。它使用一个名为 - asgi 的单独请求处理程序。

    诀窍在于制作 django 应用程序级别的 url 以将“http.request”通道分派到正确的 urls 配置,该配置处理我们的传统 Django 和 Django-Rest-Framework 视图。

    其余的 asgi 频道都创建了“视图”或频道以适当地处理它们。

    让我知道这是否足以让您朝着正确的方向前进。如果您向我提供具体问题,我可以为您提供链接/详细信息。

    【讨论】:

    • 谢谢@Richael - 我已经把它放在一边了,但这激发了我再次拿起它的兴趣!
    • @Richael。我想知道。你做了什么?我需要启动一个通过 api 进行通信的聊天。带有rest-framework和plain django。但是这两个项目在不同的实例上。我需要什么方法?在网络 django 上包含频道或将其包含在 api 中?
    猜你喜欢
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 2014-10-02
    • 1970-01-01
    • 2014-03-18
    • 2011-09-14
    • 2011-09-17
    • 2010-11-28
    相关资源
    最近更新 更多