FastAPI学习之权限管理
常见权限管理模式 权限管理是系统安全的核心组件,不同场景需适配不同模式。以下是7种常见方案及其适用场景、实现示例和选型指南: RBAC(基于角色的访问控制) 原理:用户关联角色→角色关联权限 层级结构:用户→角色→权限 适用场景: 企业后台…
常见权限管理模式 权限管理是系统安全的核心组件,不同场景需适配不同模式。以下是7种常见方案及其适用场景、实现示例和选型指南: RBAC(基于角色的访问控制) 原理:用户关联角色→角色关联权限 层级结构:用户→角色→权限 适用场景: 企业后台…
FastAPI 完全可以接入模板引擎来开发传统网站!虽然 FastAPI 以构建高性能 API 著称,但它基于 Starlette 框架,天然支持模板渲染和静态文件托管。 模板引擎选型 引擎 特点 安装命令 Jinja2 语法简洁,广泛使用…
OAuth2与JWT OAuth2和JWT是两种常用于身份验证与授权的技术,但它们的核心目标和应用场景不同。 本质区别 特性 OAuth2 JWT 定位 授权框架(定义资源访问的流程) 令牌格式(安全传输信息的标准) 核心目标 允许第三方应…
在 FastAPI 中接入中间件(Middleware)非常简单,因为 FastAPI 基于 Starlette 框架,可以直接使用 Starlette 的中间件系统。 中间件基础概念 中间件是 FastAPI 中用于拦截HTTP 请求和响…
FastAPI的异步实现基于Python的asyncio库和ASGI(异步服务器网关接口)规范,能够高效处理I/O密集型和高并发请求。 FastAPI异步简介 基础概念 协程(Coroutine):通过async def 定义的函数,返回一…
FastAPI 基于 Starlette,而 Starlette 提供了 WebSocket 支持,所以 FastAPI 自然也能处理 WebSocket 连接。 WebSocket 的适用场景 WebSocket 是一种支持全双工通信 的…
在先前的文章Python Web 应用的线上部署 中,主要讲解了如何部署 Flask 和 Django,虽然涉及了部分 ASGI 服务器的相关部署知识,但是介绍的非常的简单,今天就针对 FastAPI 应用如何部署到线上服务器进行比较详细的…
FastAPI的自动生成文档功能是其核心特性之一,它基于 OpenAPI(原Swagger)规范,通过代码中的类型提示和模型定义,自动生成交互式API文档。 文档生成的底层原理 FastAPI通过以下步骤生成文档: 收集路由信息:解析所有使…
FastAPI 与 Starlette 的关系 FastAPI 和 Starlette 是密切相关的 Python Web 框架,理解它们的关系有助于更好地选择和使用工具。 基本定义 Starlette: 轻量级ASGI(Asynchron…
先前学习FastAPI 路由 的时候已经介绍过依赖注入,但由于篇幅限制并没有梳理的特别详细,这次期望进行一些完整的梳理。 依赖注入简介 FastAPI 的 依赖注入(Dependency Injection) 是一种解耦代码、复用逻辑的核心…