tutorial004_py39.py — fastapi Source File
Architecture documentation for tutorial004_py39.py, a python file in the fastapi codebase. 5 imports, 1 dependents.
Entity Profile
Dependency Diagram
graph LR 38ef6f23_808c_5f1f_4d60_57127dfa4be4["tutorial004_py39.py"] 534f6e44_61b8_3c38_8b89_6934a6df9802["__init__.py"] 38ef6f23_808c_5f1f_4d60_57127dfa4be4 --> 534f6e44_61b8_3c38_8b89_6934a6df9802 01c652c5_d85c_f45e_848e_412c94ea4172["exceptions.py"] 38ef6f23_808c_5f1f_4d60_57127dfa4be4 --> 01c652c5_d85c_f45e_848e_412c94ea4172 58bb043a_10d8_c308_5564_225558a63815["RequestValidationError"] 38ef6f23_808c_5f1f_4d60_57127dfa4be4 --> 58bb043a_10d8_c308_5564_225558a63815 967b6712_70e2_f5fa_f671_7c149857a445["responses.py"] 38ef6f23_808c_5f1f_4d60_57127dfa4be4 --> 967b6712_70e2_f5fa_f671_7c149857a445 72a586ac_ceef_ac9f_17ec_0ed0d645b635["starlette.exceptions"] 38ef6f23_808c_5f1f_4d60_57127dfa4be4 --> 72a586ac_ceef_ac9f_17ec_0ed0d645b635 73369753_bf41_b92f_83b4_ec5f00c854e3["test_tutorial004.py"] 73369753_bf41_b92f_83b4_ec5f00c854e3 --> 38ef6f23_808c_5f1f_4d60_57127dfa4be4 style 38ef6f23_808c_5f1f_4d60_57127dfa4be4 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
from fastapi import FastAPI, HTTPException
from fastapi.exceptions import RequestValidationError
from fastapi.responses import PlainTextResponse
from starlette.exceptions import HTTPException as StarletteHTTPException
app = FastAPI()
@app.exception_handler(StarletteHTTPException)
async def http_exception_handler(request, exc):
return PlainTextResponse(str(exc.detail), status_code=exc.status_code)
@app.exception_handler(RequestValidationError)
async def validation_exception_handler(request, exc: RequestValidationError):
message = "Validation errors:"
for error in exc.errors():
message += f"\nField: {error['loc']}, Error: {error['msg']}"
return PlainTextResponse(message, status_code=400)
@app.get("/items/{item_id}")
async def read_item(item_id: int):
if item_id == 3:
raise HTTPException(status_code=418, detail="Nope! I don't like 3.")
return {"item_id": item_id}
Domain
Subdomains
Dependencies
- RequestValidationError
- __init__.py
- exceptions.py
- responses.py
- starlette.exceptions
Source
Frequently Asked Questions
What does tutorial004_py39.py do?
tutorial004_py39.py is a source file in the fastapi codebase, written in python. It belongs to the FastAPI domain, Routing subdomain.
What functions are defined in tutorial004_py39.py?
tutorial004_py39.py defines 3 function(s): http_exception_handler, read_item, validation_exception_handler.
What does tutorial004_py39.py depend on?
tutorial004_py39.py imports 5 module(s): RequestValidationError, __init__.py, exceptions.py, responses.py, starlette.exceptions.
What files import tutorial004_py39.py?
tutorial004_py39.py is imported by 1 file(s): test_tutorial004.py.
Where is tutorial004_py39.py in the architecture?
tutorial004_py39.py is located at docs_src/handling_errors/tutorial004_py39.py (domain: FastAPI, subdomain: Routing, directory: docs_src/handling_errors).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free