FastAPI 返回制定 status_code 500
时间: 2024-10-24 16:03:50 浏览: 19
FastAPI是一个用于构建现代Web API的高级Python框架,它基于Type hints和标准Python类型系统,提供了一种简洁、快速的方式来定义RESTful APIs。当你想要在FastAPI应用中返回一个HTTP状态码为500(内部服务器错误)时,通常会在视图函数中使用`HTTPException`来表示这个异常情况。例如:
```python
from fastapi import FastAPI, HTTPException
app = FastAPI()
@app.exception_handler(HTTPException)
async def http_exception_handler(request, exc):
return {"detail": str(exc.detail), "status_code": exc.status_code}
def some_function():
# 如果这里发生错误,比如除数为零
try:
result = 1 / 0
except Exception as e:
raise HTTPException(status_code=500, detail="Internal Server Error")
some_view = app.get("/example")
some_view.dependant(some_function)
```
在这个例子中,如果`some_function`引发了除数为零的错误,FastAPI会捕获到这个异常,并通过`http_exception_handler`处理程序返回HTTP状态码为500的响应给客户端。
阅读全文