Added asgi_wrapper plugin hook, closes #520

This commit is contained in:
Simon Willison 2019-07-02 20:57:28 -07:00
commit 4d2fdafe39
5 changed files with 78 additions and 1 deletions

View file

@ -651,9 +651,12 @@ class Datasette:
if not database.is_mutable:
await database.table_counts(limit=60 * 60 * 1000)
return AsgiLifespan(
asgi = AsgiLifespan(
AsgiTracer(DatasetteRouter(self, routes)), on_startup=setup_db
)
for wrapper in pm.hook.asgi_wrapper(datasette=self):
asgi = wrapper(asgi)
return asgi
class DatasetteRouter(AsgiRouter):