【发布时间】:2020-03-31 10:49:32
【问题描述】:
我在将数据从我的 esp32 板上的 tcp 客户端发送到我的 python django 服务器时遇到问题,我不熟悉在 Django 中设置频道,有没有办法可以发送数据并显示在我的页面中?
【问题讨论】:
标签: python django tcp django-rest-framework django-channels
我在将数据从我的 esp32 板上的 tcp 客户端发送到我的 python django 服务器时遇到问题,我不熟悉在 Django 中设置频道,有没有办法可以发送数据并显示在我的页面中?
【问题讨论】:
标签: python django tcp django-rest-framework django-channels
为了让您的微控制器 (esp32) 首先与您自己的服务器端代码通信,您需要定义您将要使用的协议:
A. TCP: TCP依靠IP提供地址在计算机之间进行通信。 TCP/IP 是互联网和其他网络的基础。
B. HTTP: HTTP 主要由浏览器(IE、Google Chrome)使用。它建立在 TCP 之上,在两台计算机之间提供安全可靠的链接,因为如果数据包丢失 - 它可以安全地重新传输。
确定您现在要使用的协议后,您需要合适的服务器端代码。在 python 中,您可以使用几个库/框架:
A. HTTP: Django、Flask、AIOHTTP(所有这些都支持发送和接收 JSON (REST)),我最好将其中一个框架用于我的 IoT 项目。
B. TCP:如果您的微控制器非常小并且不支持 HTTP/JSON,您可以使用简单的 SocketServer 或 Tornado TCP Server。不用担心,即使你的开发板和服务器之间通过 TCP 进行通信,你仍然可以导入 django 的库并使用 django 的 ORM。
【讨论】: