技能 py-fastapi-patterns
🐍

py-fastapi-patterns

安全 🌐 网络访问⚙️ 外部命令

Aplicar Mejores Prácticas de FastAPI

Construir APIs con FastAPI requiere comprender la inyección de dependencias, los modelos de respuesta y el diseño de esquemas OpenAPI. Esta habilidad proporciona patrones probados en batalla que previenen errores comunes y mejoran la experiencia del desarrollador para los equipos de frontend.

支持: Claude Codex Code(CC)
📊 70 充足
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“py-fastapi-patterns”。 Crear un modelo de respuesta paginada para listar evaluaciones

预期结果:

  • Definir una clase genérica PaginatedResponse con campos items, total, page y size
  • Usar response_model=PaginatedResponse[AssessmentRead] en el endpoint de listado
  • FastAPI filtra automáticamente la respuesta para incluir solo los campos de AssessmentRead
  • El esquema OpenAPI documentará correctamente la estructura anidada

正在使用“py-fastapi-patterns”。 Agregar middleware CORS a mi aplicación FastAPI

预期结果:

  • Importar CORSMiddleware desde fastapi.middleware.cors
  • Agregar middleware con allow_origins, allow_credentials, allow_methods y allow_headers
  • Agregar middleware CORS temprano en la pila de middleware para el orden apropiado
  • Usar orígenes específicos en lugar de comodín (*) en producción

正在使用“py-fastapi-patterns”。 Crear validación para un campo de entrada

预期结果:

  • Usar Pydantic Field con parámetros min_length, max_length y description
  • Agregar un método field_validator para validar contra valores permitidos
  • Lanzar ValueError con un mensaje claro para entradas inválidas
  • FastAPI devuelve automáticamente estado 422 en caso de fallo de validación

安全审计

安全
v4 • 1/16/2026

Pure documentation skill containing only markdown explanations and Python code examples. No executable scripts, network calls, file system access, or environment variable access. Static findings are false positives triggered by documentation keywords and markdown syntax.

2
已扫描文件
564
分析行数
2
发现项
4
审计总数
审计者: claude 查看审计历史 →

质量评分

38
架构
100
可维护性
87
内容
21
社区
100
安全
91
规范符合性

你能构建什么

Construir APIs Mantenibles

Aplicar cadenas de dependencias y modelos de respuesta para crear APIs que sean fáciles de mantener y evolucionar con el tiempo.

Mejorar la Integración con Frontend

Diseñar esquemas OpenAPI que generen tipos TypeScript precisos para herramientas de generación de código frontend.

Estandarizar Patrones del Equipo

Establecer manejo de errores consistente y organización de rutas en múltiples servicios API.

试试这些提示

Inyección de Dependencias
Muéstrame cómo crear una cadena de dependencias en FastAPI para autenticación. Incluye las dependencias get_session, get_current_user y get_current_active_user que puedan usarse en los endpoints.
Modelos de Respuesta
Explica cómo usar response_model en FastAPI para evitar exponer campos internos como hashed_password. Muestra un modelo User con variantes de lectura y creación.
Manejo de Errores
¿Cómo creo manejadores de excepciones personalizados en FastAPI que devuelvan respuestas de error consistentes con códigos de error? Incluye tanto la clase de excepción como el manejador.
Orden de Rutas
Explica por qué importa el orden de las rutas en FastAPI. Muestra un ejemplo de cómo colocar /users/me antes de /users/{user_id} previene problemas de coincidencia.

最佳实践

  • Siempre definir rutas específicas antes de rutas parametrizadas genéricas para evitar coincidencias incorrectas
  • Usar response_model en cada endpoint para controlar la salida y generar esquemas OpenAPI precisos
  • Encadenar dependencias desde la más genérica (sesión) hasta la más específica (usuario_actual) para reutilización

避免

  • Omitir response_model expone campos internos como hashed_password en las respuestas de la API
  • Colocar rutas genéricas antes de rutas específicas hace que /users/me sea capturado como un parámetro user_id
  • Usar cláusulas except desnudas o HTTPException genérico sin códigos de estado crea respuestas de error inconsistentes

常见问题

¿Funciona esta habilidad con endpoints asíncronos de FastAPI?
Sí. Todos los patrones soportan definiciones de endpoints tanto síncronos como asíncronos. Las dependencias pueden ser funciones async usando await.
¿Qué versiones de Python son compatibles?
FastAPI requiere Python 3.8 o posterior. La mayoría de los patrones funcionan con características de Python 3.9+ como el operador de unión de tipos |.
¿Puedo usar estos patrones con otros frameworks?
El concepto de inyección de dependencias se aplica a otros frameworks. Los modelos de respuesta y patrones OpenAPI son específicos de FastAPI.
¿Están seguros mis datos al usar estos patrones?
Sí. Esta habilidad contiene solo patrones de documentación. Ningún dato sale de tu entorno al aplicar estas prácticas.
¿Por qué estoy recibiendo errores de validación 422?
Pydantic v2 es estricto por defecto. Verifica que tu cuerpo de solicitud coincida con todos los validadores Field incluyendo restricciones de min_length y max_length.
¿Cómo se compara esto con Django REST Framework?
FastAPI proporciona generación automática de OpenAPI y soporte nativo async. DRF tiene más viewsets integrados pero requiere más configuración para documentación de API.

开发者详情

文件结构

📄 SKILL.md