<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0"><channel><title>分类：FastAPI - LT技术站</title><link>https://lautung.com/categories/fastapi</link><atom:link href="https://lautung.com/categories/fastapi/feed/categories/fastapi.xml" rel="self" type="application/rss+xml"/><description>纸上得来终觉浅，绝知此事要躬行！</description><generator>Halo v2.27.2</generator><language>zh-cn</language><image><url>https://lautung.com/upload/ChatGPT%20Image%202026%E5%B9%B47%E6%9C%8810%E6%97%A5%2002_45_40(1).webp</url><title>分类：FastAPI - LT技术站</title><link>https://lautung.com/categories/fastapi</link></image><lastBuildDate>Wed, 11 Nov 2026 21:57:25 GMT</lastBuildDate><item><title><![CDATA[Pydantic 模型怎么当契约：校验、响应模型和示例]]></title><link>https://lautung.com/archives/fastapi-04-pydantic</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=Pydantic%20%E6%A8%A1%E5%9E%8B%E6%80%8E%E4%B9%88%E5%BD%93%E5%A5%91%E7%BA%A6%EF%BC%9A%E6%A0%A1%E9%AA%8C%E3%80%81%E5%93%8D%E5%BA%94%E6%A8%A1%E5%9E%8B%E5%92%8C%E7%A4%BA%E4%BE%8B&amp;url=/archives/fastapi-04-pydantic" width="1" height="1" alt="" style="opacity:0;">Pydantic模型用于规范API接口契约，严格区分入参（UserIn）与出参（UserOut）防止数据泄露，入参包含密码但出参不返回，通过response_model注解实现数据过滤。嵌套模型需明确示例数据以生成规范OpenAPI文档。校验工作应在模型层完成，外部函数仅处理业务逻辑。避免将ORM对象直接序列化，需显式指定字段或使用from_attributes=True。典型错误包括：①未拆分用户入参/出参/数据库模型；②在路由层实现字段校验；③直接序列化ORM对象导致多余字段。规范使用模型增强安全性、规范文档、简化开发流程。后续将讲解按模块拆解路由的设计。]]></description><guid isPermaLink="false">/archives/fastapi-04-pydantic</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa04-pydantic-cover.jpg&amp;size=m" type="image/jpeg" length="44603"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:04:31 GMT</pubDate></item><item><title><![CDATA[路径、查询和请求体为什么要分开声明]]></title><link>https://lautung.com/archives/fastapi-03-params</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E8%B7%AF%E5%BE%84%E3%80%81%E6%9F%A5%E8%AF%A2%E5%92%8C%E8%AF%B7%E6%B1%82%E4%BD%93%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%88%86%E5%BC%80%E5%A3%B0%E6%98%8E&amp;url=/archives/fastapi-03-params" width="1" height="1" alt="" style="opacity:0;">FastAPI 通过路径参数、查询参数和请求体的分离声明提高接口开发清晰度与维护性，路径参数定义资源标识，默认为必填且采用Path类型；查询参数用于过滤和开关，支持可选默认值及数组类型。JSON请求体通过Pydantic模型解析，确保格式校验，避免将请求体与路径或查询参数混合声明。头信息与Cookie需独立处理，FastAPI会自动映射HTTP请求录入不同参数。常见误区包括：将过滤条件硬编码进路径地址导致演进困难，GET接口携带JSON请求体违背协议规范，以及将所有输入强行合并为单个dict导致功能缺失。分离体系能让422错误精准提示字段问题，提高调试效率，后续内容将深入解析契约模型与部署流程。]]></description><guid isPermaLink="false">/archives/fastapi-03-params</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa03-params-cover.jpg&amp;size=m" type="image/jpeg" length="37971"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:04:31 GMT</pubDate></item><item><title><![CDATA[第一个接口怎么跑起来：安装、uvicorn 与 /docs]]></title><link>https://lautung.com/archives/fastapi-02-first-app</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%8E%A5%E5%8F%A3%E6%80%8E%E4%B9%88%E8%B7%91%E8%B5%B7%E6%9D%A5%EF%BC%9A%E5%AE%89%E8%A3%85%E3%80%81uvicorn%20%E4%B8%8E%20%2Fdocs&amp;url=/archives/fastapi-02-first-app" width="1" height="1" alt="" style="opacity:0;">FastAPI 最小应用需搭建 Python 3.11+ 虚拟环境并安装标准版依赖。创建应用主文件 main.py 定义根路由和健康检查接口，确保服务器导入时使用 app = FastAPI() 格式。通过 uv run 命令启动服务，默认监听本地 8000 端口并支持热重载，访问 /docs 页面可查看 Swagger 文档。需注意错误检查：Python 解释器路径错误会导致 ModuleNotFoundError，未添加 --reload 参数或修改代码时页面不变需检查终端运行路径，主文件名称不匹配或模块路径配置错误会导致 ASGI 启动异常。开发阶段优先验证 health 端点状态和文档 Swagger 拓扑结构，确保环境配置与代码结构无缝衔接。]]></description><guid isPermaLink="false">/archives/fastapi-02-first-app</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa02-first-app-cover.jpg&amp;size=m" type="image/jpeg" length="48891"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:45 GMT</pubDate></item><item><title><![CDATA[FastAPI 为什么适合做 JSON API：ASGI、类型提示与自动文档]]></title><link>https://lautung.com/archives/fastapi-01-asgi-docs</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=FastAPI%20%E4%B8%BA%E4%BB%80%E4%B9%88%E9%80%82%E5%90%88%E5%81%9A%20JSON%20API%EF%BC%9AASGI%E3%80%81%E7%B1%BB%E5%9E%8B%E6%8F%90%E7%A4%BA%E4%B8%8E%E8%87%AA%E5%8A%A8%E6%96%87%E6%A1%A3&amp;url=/archives/fastapi-01-asgi-docs" width="1" height="1" alt="" style="opacity:0;">FastAPI通过类型提示、Pydantic和OpenAPI三重体系实现自动化编程：1）路由依赖和参数类型声明直接生成ASGI调用链和运行时校验，避免硬编码_explicit cast_；2）自动生成OpenAPI文档、3）强调ASGI服务器与中层分离（Uvicorn/Nginx处理网络层，FastAPI负责路由解释）；4）async/await适用于I/O等待场景，但需将资源争夺式阻塞代码（如直接调用DBAPI同步方法）通过普通函数调用阻塞。常见误区：FastAPI不等于Uvicorn，框架与ASGI服务器分离；类型定义影响生产运行和文档；ASGI仅规范通信接口，需显式选择异步组件。记住核心架构：客户端→ASGI服务器→FastAPI路由层→Starlette框架层→Pydantic校验层，各层职责明确，通过类型提示实现全链路自动化开发合规。]]></description><guid isPermaLink="false">/archives/fastapi-01-asgi-docs</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa01-asgi-cover.jpg&amp;size=m" type="image/jpeg" length="39533"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:40 GMT</pubDate></item><item><title><![CDATA[FastAPI 系列：从第一个接口到生产部署]]></title><link>https://lautung.com/archives/fastapi-series</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=FastAPI%20%E7%B3%BB%E5%88%97%EF%BC%9A%E4%BB%8E%E7%AC%AC%E4%B8%80%E4%B8%AA%E6%8E%A5%E5%8F%A3%E5%88%B0%E7%94%9F%E4%BA%A7%E9%83%A8%E7%BD%B2&amp;url=/archives/fastapi-series" width="1" height="1" alt="" style="opacity:0;">FastAPI 是专为 JSON API 设计的现代化 ASGI 框架，通过三重核心机制提升开发效率：基于 ASGI 的异步事件循环模型，避免阻塞操作影响性能；Pydantic 模型自动校验请求体与生成OpenAPI文档，消除手动验证与文档维护的冗余；最终通过生产部署包直接导出可交互式文档，形成完整闭环。系列教程覆盖从基础安装 commands（如 fastapi dev 快速启动，fastapi run 配合Gunicorn部署）到全栈开发的18个关键环节，包括路由拆分规范、数据库会话依赖注入、JWT鉴权集成、中间件与后台任务分离原则等。与 Flask/Django 的显著差异在于：始终通过类型定义校验逻辑（替代手动验证层），依赖注入管理副作用代码（如数据库连接），OpenAPI 文档直接嵌入代码（替代后置生成）。需要特别注意三大约束：禁止在 async func 中使用阻塞库，必须通过 thread pool 处理；开发与生产命令物理隔离；OpenAPI 实际需覆盖字段验证、错误注册等完整契约定义，而非仅需引用类型注解。该框架不提供后台管理、全文检索或数据库 ORM，适合以 OpenAPI 为核心的 API 服务开发。]]></description><guid isPermaLink="false">/archives/fastapi-series</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa-series-cover.jpg&amp;size=m" type="image/jpeg" length="39356"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:39 GMT</pubDate></item><item><title><![CDATA[鉴权怎么接到 Depends 上：OAuth2 Password 与 Bearer JWT]]></title><link>https://lautung.com/archives/fastapi-09-auth</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E9%89%B4%E6%9D%83%E6%80%8E%E4%B9%88%E6%8E%A5%E5%88%B0%20Depends%20%E4%B8%8A%EF%BC%9AOAuth2%20Password%20%E4%B8%8E%20Bearer%20JWT&amp;url=/archives/fastapi-09-auth" width="1" height="1" alt="" style="opacity:0;">FastAPI提倡通过Depends封装鉴权逻辑，采用OAuth2PasswordBearer处理token认证，确保路由无需重复鉴权代码。密码存储必须用pwdlib等专用库进行哈希，即使校验失败也应隐藏用户是否存在。JWT需设置30分钟短期有效期（HS256算法），密钥必须通过openssl生成且存放在环境变量，避免明文泄露。认证流程应分离登录接口（返回token）和资源保护路由（验证 token并解密用户信息）。注意事项包括：JWT不适宜长期会话，防止密钥暴露在仓库，禁止自定义鉴权中间件替代官方方案。读者收益为掌握标准鉴权架构、安全配置要点及常见错误应对策略。]]></description><guid isPermaLink="false">/archives/fastapi-09-auth</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa09-auth-cover.jpg&amp;size=m" type="image/jpeg" length="37139"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:39 GMT</pubDate></item><item><title><![CDATA[状态码和异常为什么不要裸 raise]]></title><link>https://lautung.com/archives/fastapi-08-exceptions</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E7%8A%B6%E6%80%81%E7%A0%81%E5%92%8C%E5%BC%82%E5%B8%B8%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%8D%E8%A6%81%E8%A3%B8%20raise&amp;url=/archives/fastapi-08-exceptions" width="1" height="1" alt="" style="opacity:0;">FastAPI错误处理需遵循HTTP协议规范：应用层错误应通过HTTPException映射到对应状态码（如404/422），系统级错误保留500状态码。需使用422状态码处理Pydantic模型校验失败，避免混淆业务400错误。领域异常建议单独封装 Exception 并自定义handler映射到HTTP（404/409等），服务层与Web层解耦。禁止将内部日志或堆栈信息返回客户端，生产环境应关闭traceback。常见误区包括：用200包装错误导致监控失效；捕获异常后静默返回空对象；混淆404（资源不存在）和403（权限不足）。需注意401需搭配WWW-Authenticate头使客户端重认证，隐私敏感资源可统一用404避免信息泄露。正确实践确保协议兼容性与系统健壮性。]]></description><guid isPermaLink="false">/archives/fastapi-08-exceptions</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa08-exceptions-cover.jpg&amp;size=m" type="image/jpeg" length="42161"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:26 GMT</pubDate></item><item><title><![CDATA[数据库会话怎么进接口：SQLAlchemy 与依赖覆盖]]></title><link>https://lautung.com/archives/fastapi-07-database</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BC%9A%E8%AF%9D%E6%80%8E%E4%B9%88%E8%BF%9B%E6%8E%A5%E5%8F%A3%EF%BC%9ASQLAlchemy%20%E4%B8%8E%E4%BE%9D%E8%B5%96%E8%A6%86%E7%9B%96&amp;url=/archives/fastapi-07-database" width="1" height="1" alt="" style="opacity:0;">FastAPI数据库会话需通过依赖注入实现请求级隔离。核心方法：1.应用启动时配置数据库引擎 SessionLocal；2.路由使用db: DbDep依赖注入，成功路径自动提交事务，异常路径自动回滚；3.测试时通过dependency_overrides覆盖SessionLocal为内存会话实现隔离测试。关键注意事项：禁止使用全局会话导致并发污染，路由层代码仅负责增删改查逻辑不重复提交，确保连接字符串通过环境变量配置。同步模式下避免在async函数内使用同步驱动操作，异步模式需使用postgresql+asyncpg等特定协议引擎。此架构支持金字塔应用模式，满足90%常规业务场景需求，为后续实现乐观锁、审计追踪等高级特性奠定基础。]]></description><guid isPermaLink="false">/archives/fastapi-07-database</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa07-database-cover.jpg&amp;size=m" type="image/jpeg" length="33999"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:26 GMT</pubDate></item><item><title><![CDATA[生产怎么部署：workers、健康检查、配置与日志]]></title><link>https://lautung.com/archives/fastapi-12-deploy</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E7%94%9F%E4%BA%A7%E6%80%8E%E4%B9%88%E9%83%A8%E7%BD%B2%EF%BC%9Aworkers%E3%80%81%E5%81%A5%E5%BA%B7%E6%A3%80%E6%9F%A5%E3%80%81%E9%85%8D%E7%BD%AE%E4%B8%8E%E6%97%A5%E5%BF%97&amp;url=/archives/fastapi-12-deploy" width="1" height="1" alt="" style="opacity:0;">FastAPI生产部署需解决多worker进程扩容、自动探活、日志收集三问题。健康检查通过/health（静默检测）和/ready（数据库状态确认）端点实现，避免重量级操作。配置采用.pydantic模块读取环境变量，禁用调试文档提升安全性。Dockerfile需基础镜像精简，保持依赖仅需运行时环境，命令明确指向应用入口。常见误区包括：禁用热重载（避免文件监控性能损耗）、数据库与应用隔离部署、避免线程池硬扛阻塞调用。最终架构为无状态服务集群配合Uvicorn worker，通过标准日志流对接编排系统，形成完整的可部署生产链路。读者可掌握最小化配置、探活机制设计、容器化部署规范及性能瓶颈规避方法。]]></description><guid isPermaLink="false">/archives/fastapi-12-deploy</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa12-deploy-cover.jpg&amp;size=m" type="image/jpeg" length="52831"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:17 GMT</pubDate></item><item><title><![CDATA[测试怎么写才不连真实库：TestClient 与 dependency_overrides]]></title><link>https://lautung.com/archives/fastapi-11-testing</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E6%B5%8B%E8%AF%95%E6%80%8E%E4%B9%88%E5%86%99%E6%89%8D%E4%B8%8D%E8%BF%9E%E7%9C%9F%E5%AE%9E%E5%BA%93%EF%BC%9ATestClient%20%E4%B8%8E%20dependency_overrides&amp;url=/archives/fastapi-11-testing" width="1" height="1" alt="" style="opacity:0;">FastAPI接口测试需验证状态码、JSON结构及鉴权分支，而非检查数据库状态。使用TestClient模拟ASGI流程，推荐依赖替换而非真实环境启动，避免端口冲突及性能损耗。重点覆盖get_db、get_current_user等依赖函数的参数分支：1）用FakeSession模拟数据库依赖，通过dependency_overrides接收替换的函数对象，确保替换的是原始注入函数而非同名新函数；2）测试user分支时替换依赖函数构造单元测试，集成测试保留生产依赖；3）错误测试需覆盖契约约束修改，如GE422时的Pydantic字段验证失效。常见误区包括：在每个测试中重复初始化uvicorn服务、混淆测试层级导致集成测试coverage下降、暴露真实JWT密钥引发环境耦合。遵循分层测试原则：单元测试替换应用层依赖，仅通过API契约验证业务逻辑；生产部署测试才接触真实数据库及认证密钥，确保测试效率与代码健壮性。]]></description><guid isPermaLink="false">/archives/fastapi-11-testing</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa11-testing-cover.jpg&amp;size=m" type="image/jpeg" length="45878"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:16 GMT</pubDate></item><item><title><![CDATA[依赖注入到底省了什么：Depends、yield 与生命周期]]></title><link>https://lautung.com/archives/fastapi-06-depends</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E4%BE%9D%E8%B5%96%E6%B3%A8%E5%85%A5%E5%88%B0%E5%BA%95%E7%9C%81%E4%BA%86%E4%BB%80%E4%B9%88%EF%BC%9ADepends%E3%80%81yield%20%E4%B8%8E%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F&amp;url=/archives/fastapi-06-depends" width="1" height="1" alt="" style="opacity:0;">FastAPI 通过依赖注入分离请求处理逻辑，路径函数仅声明所需服务。每个依赖在请求开始时创建，完成后自动清理。支持 yield 实现类似 context managers 的行为，确保资源正确定位。例如：路由依赖通过 `Depends(get_settings)` 从外部获取配置，数据库会话通过内层依赖的 yield 机制保证生命周期管理。需注意依赖深度不宜超过三层，防止性能下降和理解困难。常见误区包括：全局数据库会话导致并发错误；滥用依赖埋抽象复杂性；忽略 yield 后异常自动回滚。正确实践能提升代码复用性、可测试性与调试效率，同时减少状态管理错误，为后续中间件和部署优化奠定基础。]]></description><guid isPermaLink="false">/archives/fastapi-06-depends</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa06-depends-cover.jpg&amp;size=m" type="image/jpeg" length="45268"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:15 GMT</pubDate></item><item><title><![CDATA[路由怎么拆：APIRouter、前缀和项目结构]]></title><link>https://lautung.com/archives/fastapi-05-router</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=%E8%B7%AF%E7%94%B1%E6%80%8E%E4%B9%88%E6%8B%86%EF%BC%9AAPIRouter%E3%80%81%E5%89%8D%E7%BC%80%E5%92%8C%E9%A1%B9%E7%9B%AE%E7%BB%93%E6%9E%84&amp;url=/archives/fastapi-05-router" width="1" height="1" alt="" style="opacity:0;">FastAPI 应用应通过 APIRouter 合理拆分路由，解决代码复杂度问题。建议目录结构为 app/主文件/dependencies/Router子目录，每个路由文件内部专注业务逻辑。核心要点包括：1. APIRouter 灵活管理路径前缀、文档标签和依赖；2. 中间件、异常处理等公共逻辑归属主文件，路由函数需精简；3. 路由级依赖可整组生效，减少单个接口注解；4. 误区需规避重复路径、过度拆分（粒度以资源为单位）及错误的独立 App 实例创建。重要操作：路由注册时指定前缀（如）/api/v1，依赖注入作用于整个路由组而非单接口。实际开发中通过模块化提升维护性，避免将小型功能拆分子路由，确保功能边界清晰。]]></description><guid isPermaLink="false">/archives/fastapi-05-router</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa05-router-cover.jpg&amp;size=m" type="image/jpeg" length="35524"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 12:03:14 GMT</pubDate></item><item><title><![CDATA[FastAPI 系列总目录]]></title><link>https://lautung.com/archives/fastapi-series-toc</link><description><![CDATA[<img src="https://lautung.com/plugins/feed/assets/telemetry.gif?title=FastAPI%20%E7%B3%BB%E5%88%97%E6%80%BB%E7%9B%AE%E5%BD%95&amp;url=/archives/fastapi-series-toc" width="1" height="1" alt="" style="opacity:0;">该系列教程系统化构建 FastAPI 项目，按"基础-&gt;工程化"分层教学。前5篇完成接口规范、类型提示和文档自动生成，着重路径参数、查询参数、请求体的精细划分。后7篇聚焦工程实践，通过 ASGI、数据库会话、依赖注入（支持测试时覆盖率控制）、异常处理（避免裸 raise）、鉴权集成（OAuth2/JWT）、多 worker 部署、测试 client 和配置注入等模块抽取核心业务，形成清晰的代码分层结构。读者应按顺序执行：先构建最小可行API（查看 /docs），再逐步添加契约验证（Pydantic）、依赖管理（Depends）、数据库会话、权限控制等技术组件。最终自检要点包括：是否通过Pydantic模型管理契约、是否合理使用依赖覆盖技术隔离开发测试环境、是否具备生产级多 worker 部署、健康检查和日志系统，避免仅限开发环境运行问题。]]></description><guid isPermaLink="false">/archives/fastapi-series-toc</guid><dc:creator>LTT</dc:creator><enclosure url="https://lautung.com/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=%2Fupload%2Ffa-series-cover.jpg&amp;size=m" type="image/jpeg" length="39356"/><category>FastAPI</category><pubDate>Sat, 12 Sep 2026 11:45:19 GMT</pubDate></item></channel></rss>