There is a sense in which what you are describing, for the Django side, is what a webserver, including one involving Django, ordinarily does.
The only requirement the web server makes (and some can get around it with work) is that the data sent over the socket, at least from the client (microcontroller) to the server be formatted as HTTP. That's not a big deal to do. It could consist of a canned (or nearly so, if the length of your data varies) header in front of what you actually want to send.
The format of the data in the reply is potentially even more flexible.
Particularly if the connection is closed after each round trip, that's very vanilla web serving.