在 FastAPI 中,您可能会遇到在每个端点中初始化全局对象或变量的情况资源密集型。与外部服务的连接或复杂的计算是典型的例子。本文提供了两种有效地初始化和重用 FastAPI 端点中的全局资源的选项。
FastAPI 允许您将自定义对象存储在FastAPI 应用程序实例。可以使用端点函数中的 request.app.state 属性来访问此属性。通过在启动事件或生命周期函数中初始化全局对象并将其添加到 app.state,所有端点都可以访问和重用该对象,而无需多次初始化。
Starlette 框架提供了一个生命周期处理程序,允许您在应用程序启动和关闭之前和之后执行代码。您可以在生命周期处理程序中实例化全局对象并将其添加到生命周期状态字典中。通过在端点函数中使用 request.state,您可以访问和重用端点中的对象。
这两个选项都提供了在 FastAPI 中初始化和重用全局对象的有效机制。选择取决于您应用程序的具体要求和偏好。
以上是如何在FastAPI端点中高效地初始化和重用全局对象?的详细内容。更多信息请关注PHP中文网其他相关文章!