python
runtime_error
ai_generated
true
fastapi.exceptions.HTTPException: 404: Not Found
ID: python/fastapi-http-exception-404-not-found
80%Fix Rate
88%Confidence
0Evidence
2024-05-20First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| 3.x | active | — | — | — |
Root Cause
Requested URL path does not match any defined route in the FastAPI application.
generic中文
请求的 URL 路径与 FastAPI 应用中定义的任何路由不匹配。
Workarounds
-
95% success Check and correct the route definition
@app.get('/items/{item_id}') async def read_item(item_id: int): return {'item_id': item_id} # Access /items/123, not /items/ -
90% success Add a custom 404 handler for better debugging
@app.exception_handler(404) async def not_found_handler(request, exc): return JSONResponse(status_code=404, content={'message': 'Route not found'})
Dead Ends
Common approaches that don't work:
-
Adding a catch-all route that returns 200
60% fail
Masks real errors and may cause unintended behavior.
-
Assuming trailing slash mismatch
50% fail
FastAPI by default does not redirect, so /users and /users/ are different.