Vue d'ensemble
Sanic 22.6, publié le 1er juillet 2022, ajoute les tâches en arrière-plan et la priorité des middlewares.
Fonctionnalités principales
Tâches en arrière-plan
Les tâches en arrière-plan permettent d'exécuter du code asynchrone indépendamment du cycle requête/réponse, utile pour les tâches périodiques.
python
from sanic import Sanic
import asyncio
app = Sanic('MonApp')
@app.before_server_start
async def setup(app, loop):
app.add_task(tache_periodique())
async def tache_periodique():
while True:
print('Vérification...')
await asyncio.sleep(60)
Priorité des middlewares
Les middlewares peuvent désormais être ordonnés par priorité, permettant un contrôle fin de l'ordre d'exécution.
python
from sanic import Sanic
app = Sanic('MonApp')
@app.middleware('request', priority=10)
async def auth_middleware(request):
# Exécuté en premier (priorité haute)
pass
@app.middleware('request', priority=1)
async def log_middleware(request):
# Exécuté après auth (priorité basse)
print(f'{request.method} {request.path}')
