[PYTHON] À propos de FastAPI ~ Gestion des erreurs de point de terminaison ~

Exemple de gestion des erreurs FastAPI

FastAPI version_0.61.1 Documentation: https://fastapi.tiangolo.com Source Code: https://github.com/tiangolo/fastapi

Les points de terminaison FastAPI peuvent être implémentés comme suit La gestion des erreurs devient possible.

sample.py


from fastapi import routing
def handle_wrapper(func):
    def routing_wrapper(*args, **kwargs):
        routing_api = func(*args, **kwargs)
        async def api_handle(request: Request) -> Response:
            try:
                http_response = await routing_api(request)
            except Exception as ex:
                """Décrivez ici la gestion des exceptions arbitraires"""
            return http_response
        return api_handle
    return routing_wrapper
routing.get_request_handler = handle_wrapper(routing.get_request_handler)
http_response = await routing_api(request)

Puisque le point final est appelé sur la 7ème ligne ↑ de ce code, Il est également possible de définir une fonction de rappel en appliquant le code ci-dessus.

Recommended Posts

À propos de FastAPI ~ Gestion des erreurs de point de terminaison ~
À propos de la gestion des erreurs Tweepy
Gestion des erreurs de trame principale
Gestion des erreurs Python
Gestion des erreurs SikuliX
django.db.migrations.exceptions.InconsistentMigrationHistory Gestion des erreurs
Python, à propos de la gestion des exceptions
Gestion des erreurs dans PythonBox
Gestion des erreurs GraphQL (gqlgen)
Autour de la gestion des erreurs de feedparser
Réponse aux erreurs lors de l'installation de mecab-python
Traitement des données 3 (développement) À propos du format des données
Mémorandum de gestion des erreurs de construction PyCUDA
A propos de la gestion des fichiers statiques Django
Erreur divisée par 0 Gestion de ZeroDivisionError
Gestion des erreurs lors de la mise à jour de Fish shell
À propos de l'erreur d'importation de PyQt5.QtWidgets (Anaconda)