falconry/falcon

ASGI: Add affordances and recipe for long-polling

Open

#1,808 opened on Dec 12, 2020

View on GitHub
 (6 comments) (0 reactions) (0 assignees)Python (9,293 stars) (925 forks)batch import
documentationenhancementgood first issueneeds contributor

Description

The 3.0 ASGI implementation already affords long-polling, but it would be useful to provide a recipe to demonstrate the pattern in the context of a Falcon app.

Also, for the sake of efficiency, we may want to provide a req.wait_disconnect() or similar method that can be executed in a background task within a responder. The responder could then use this in order to detect if it should abandon a long-poll early in the case that the client bails out. This is similar to what asgi.App does when streaming SSE's (using watch_disconnect().

Contributor guide

ASGI: Add affordances and recipe for long-polling · falconry/falcon#1808 | Good First Issue