← 返回 Skills 市场
cn-big-cabbage

FastAPI

作者 CN-big-cabbage · GitHub ↗ · v0.1.0 · MIT-0
cross-platform ⚠ suspicious
79
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install fastapi-framework
功能描述
FastAPI - 高性能 Python Web API 框架
使用说明 (SKILL.md)

FastAPI 高性能 Python Web API 框架

技能概述

本技能帮助开发者使用 FastAPI 构建现代化、高性能的 Web API,支持以下场景:

  • REST API 开发: 快速构建符合 OpenAPI 标准的 RESTful 接口
  • 数据验证: 基于 Pydantic 的自动请求/响应数据验证
  • 自动文档: 自动生成 Swagger UI 和 ReDoc 交互式 API 文档
  • 异步支持: 原生支持 async/await,处理高并发场景
  • 依赖注入: 强大的依赖注入系统,简化认证、数据库连接等公共逻辑
  • 安全认证: 内置 OAuth2、JWT、API Key 等认证方案

技术基础: FastAPI 构建于 Starlette(Web 框架层)和 Pydantic(数据验证层)之上,性能接近 NodeJS 和 Go。

架构概览

FastAPI 应用架构
├── app/
│   ├── main.py              # 应用入口,注册路由和中间件
│   ├── dependencies.py      # 公共依赖(认证、数据库会话等)
│   ├── models/              # Pydantic 数据模型
│   │   ├── __init__.py
│   │   └── user.py
│   ├── routers/             # 路由模块(按业务划分)
│   │   ├── __init__.py
│   │   ├── users.py
│   │   └── items.py
│   ├── crud/                # 数据库操作层
│   │   ├── __init__.py
│   │   └── user.py
│   └── core/                # 核心配置
│       ├── config.py
│       └── security.py

核心概念

概念 说明
路径操作 使用 @app.get/post/put/delete 装饰器定义 API 端点
路径参数 URL 中的变量,如 /items/{item_id}
查询参数 URL 查询字符串,如 /items?skip=0&limit=10
请求体 通过 Pydantic 模型接收 JSON 数据
依赖注入 通过 Depends() 注入可复用的依赖函数
中间件 处理每个请求/响应的通用逻辑
路由器 APIRouter 将路由按模块组织,类似 Flask Blueprint

使用流程

AI 助手将引导你完成以下步骤:

  1. 安装 FastAPI 及依赖(uvicorn、pydantic 等)
  2. 创建应用入口文件 main.py
  3. 定义 Pydantic 数据模型
  4. 编写路径操作函数(路由处理器)
  5. 配置依赖注入和中间件
  6. 启动开发服务器并验证 API 文档

关键章节导航

AI 助手能力

当你向 AI 描述需求时,AI 会:

  • 自动生成 路由处理函数和 Pydantic 数据模型
  • 自动配置 依赖注入(数据库会话、用户认证)
  • 自动搭建 项目骨架结构(models、routers、crud 分层)
  • 自动实现 JWT 认证和 OAuth2 安全方案
  • 自动集成 SQLAlchemy/SQLModel 数据库操作
  • 自动编写 测试用例(pytest + httpx)
  • 自动处理 CORS 配置和自定义中间件

核心功能

  • ✅ 基于 Python 类型提示的自动数据验证
  • ✅ 自动生成 OpenAPI/Swagger 交互式文档
  • ✅ 原生 async/await 异步支持
  • ✅ 强大的依赖注入系统
  • ✅ 内置安全认证(OAuth2、JWT、API Key、HTTP Basic)
  • ✅ 支持 WebSocket 实时通信
  • ✅ 支持 GraphQL(通过 Strawberry 集成)
  • ✅ 支持后台任务(BackgroundTasks)
  • ✅ 支持文件上传和静态文件服务
  • ✅ 支持中间件和 CORS 配置

快速示例

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()

class Item(BaseModel):
    name: str
    price: float
    is_offer: bool | None = None

@app.get("/")
async def read_root():
    return {"Hello": "World"}

@app.get("/items/{item_id}")
async def read_item(item_id: int, q: str | None = None):
    return {"item_id": item_id, "q": q}

@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):
    return {"item_name": item.name, "item_id": item_id}
# 启动开发服务器
fastapi dev main.py

# 或使用 uvicorn
uvicorn main:app --reload

访问 http://127.0.0.1:8000/docs 查看自动生成的交互式 API 文档。

扩展点

  • 中间件: 实现日志、限流、请求追踪等横切关注点
  • 依赖注入: 封装数据库连接、权限校验等可复用逻辑
  • 事件处理: startup/shutdown 生命周期钩子
  • 自定义响应: 支持 JSONResponseHTMLResponseFileResponse
  • 插件生态: 支持 SQLAlchemy、Celery、Redis、S3 等主流库

环境要求

  • Python 3.8 或更高版本(推荐 3.11+)
  • pip 包管理器
  • (可选)虚拟环境工具(venv、conda、uv)

许可证

MIT License

项目链接

安全使用建议
This appears to be a genuine FastAPI tutorial/assistant and is generally coherent with its stated purpose. Before installing or executing the example commands: 1) Prefer creating and activating a virtual environment rather than running global pip changes; avoid 'pip config set global.index-url' unless you understand the global effects. 2) Be cautious about the guide's recommendation to install/run a tool named 'uv' — verify that tool's origin before running it. 3) Do not reuse the example SECRET_KEY, fake tokens, or hard-coded passwords in any real environment — move secrets into environment variables or a secrets manager. 4) Review any generated code (especially auth, SECRET_KEY, and DB connection strings) before running it or deploying to production. If you want, I can point out every line that contains potentially insecure practice and suggest safer alternatives (env vars, .env usage, or secrets management).
能力评估
Purpose & Capability
Name/description (FastAPI framework) match the files and instructions: installation, quickstart, advanced usage, examples and tests are all consistent with a FastAPI how-to/assistant skill.
Instruction Scope
Instructions tell the AI to run standard local commands (python --version, create venv, pip install, run uvicorn) and to generate/modify project files — this is expected. Notable deviations: recommending a non-standard 'uv' tool (uv venv / uv pip install) and suggesting 'pip config set global.index-url' which modifies global pip configuration; both are beyond minimal scope and could have unintended system-wide effects. The guides also include runnable example code (including auth and JWT) which the AI may generate/execute for the user.
Install Mechanism
No install spec is provided (instruction-only). The skill does not download or install code itself; it instructs the agent to use pip/venv/uvicorn already on the system. This is the lowest-risk install model for a skill.
Credentials
The skill does not request environment variables or external credentials, which matches its purpose. However, the included example security code hard-codes a JWT SECRET_KEY and uses placeholder tokens/credentials (e.g., fake-super-secret-token, hashed password created from literal 'secret'). These are insecure if copied to production; they are not requested as secrets but are embedded in the code samples.
Persistence & Privilege
Skill is not always-enabled and does not request persistent system privileges. It does, however, instruct the agent to run commands that can create files and change pip's global config if the user follows the troubleshooting steps; that is an expected behavior for a project-setup guide but worth noting.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install fastapi-framework
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /fastapi-framework 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.1.0
Initial release - FastAPI framework skill distilled from github.com/fastapi/fastapi (97k+ stars)
元数据
Slug fastapi-framework
版本 0.1.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

FastAPI 是什么?

FastAPI - 高性能 Python Web API 框架. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 79 次。

如何安装 FastAPI?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install fastapi-framework」即可一键安装,无需额外配置。

FastAPI 是免费的吗?

是的,FastAPI 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

FastAPI 支持哪些平台?

FastAPI 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 FastAPI?

由 CN-big-cabbage(@cn-big-cabbage)开发并维护,当前版本 v0.1.0。

💬 留言讨论