Un framework y toolkit ASGI ligero para crear servicios web asíncronos y APIs en Python.
tokio-rs/axum
Una biblioteca modular y ergonómica para Rust que permite enrutar solicitudes HTTP y gestionarlas, basada en tower y hyper.
- Estrellas
- 27,588
- Forks
- 1,526
- Issues abiertos
- 109
- Último commit
- hace 5 días
¿Qué es?
axum es una biblioteca de Rust para crear servidores HTTP. Asocia rutas con funciones de gestión asíncronas sin macros, y estas funciones declaran lo que necesitan de una solicitud mediante extractors, como cuerpos JSON ya procesados, para que el análisis y la validación sean declarativos. Las funciones de gestión pueden devolver cualquier tipo que implemente el trait de respuesta, lo que hace que la gestión de errores y la generación de respuestas sean predecibles.
En lugar de definir su propio sistema de middleware, axum se basa en tower::Service. Se pueden aplicar directamente timeouts, tracing, compresión y autorización del ecosistema tower y tower-http, y compartir middleware con aplicaciones escritas con hyper o tonic. axum es una capa delgada sobre hyper y añade muy poca sobrecarga.
El proyecto se publica en crates.io y actualmente está en la serie de versiones 0.8.x, mientras que la rama principal avanza hacia la versión 0.9 con cambios incompatibles. Prohíbe el código unsafe y requiere como mínimo Rust 1.80.
Funciones clave
- 01Enrutamiento sin macros desde rutas hasta funciones de gestión asíncronas.
- 02Análisis declarativo de solicitudes mediante extractors, incluidos los cuerpos JSON.
- 03Generación de respuestas a partir de tipos de retorno habituales, con un mínimo de código adicional.
- 04Compatibilidad total con el ecosistema de middleware de tower.
- 05Capa delgada sobre hyper, con poca sobrecarga.
- 06Escrito íntegramente en Rust seguro; prohíbe el código unsafe.
Casos de uso
- Crear API REST JSON en Rust con cuerpos de solicitud y respuesta tipados.
- Añadir middleware compartido, como tracing, timeouts o compresión, a un servicio web de Rust.
- Compartir middleware entre una API web y servicios creados con hyper o tonic.
Inicio rápido
- 1
Añade axum a un proyecto de Rust (el README no incluye ningún comando de instalación).
- 2
Copia el ejemplo de uso del README en src/main.rs.
- 3
Explora el directorio examples para ver más ejemplos de código.
Antes de usarlo
- La rama main contiene cambios incompatibles previos a la versión 0.9, así que usa la rama 0.8.x para la versión publicada.
- La versión mínima de Rust compatible es la 1.80.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es axum?
- Una biblioteca modular y ergonómica para Rust que permite enrutar solicitudes HTTP y gestionarlas, basada en tower y hyper. axum es una biblioteca de Rust para crear servidores HTTP. Asocia rutas con funciones de gestión asíncronas sin macros, y estas funciones declaran lo que necesitan de una solicitud mediante extractors, como cuerpos JSON ya procesados, para que el análisis y la validación sean declarativos. Las funciones de gestión pueden devolver cualquier tipo que implemente el trait de respuesta, lo que hace que la gestión de errores y la generación de respuestas sean predecibles.
- ¿axum es gratuito? ¿Qué licencia tiene?
- axum es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿axum sigue mantenido?
- Mantenimiento activo. El último commit de axum fue el 20 oct 2026.
- ¿Para qué puedo usar axum?
- Crear API REST JSON en Rust con cuerpos de solicitud y respuesta tipados. Añadir middleware compartido, como tracing, timeouts o compresión, a un servicio web de Rust. Compartir middleware entre una API web y servicios creados con hyper o tonic.
- ¿Cómo se instala axum?
- Añade axum a un proyecto de Rust (el README no incluye ningún comando de instalación). Copia el ejemplo de uso del README en src/main.rs. Explora el directorio examples para ver más ejemplos de código.
- ¿Dónde consigo axum?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/tokio-rs/axum
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Vapor es un framework HTTP para crear sitios web, API y servicios en la nube con Swift.
Framework web rápido, minimalista y sin imponer criterios para Node.js, pensado para crear aplicaciones web y API HTTP.
Un componente de PHP que relaciona las URL de las solicitudes HTTP entrantes con configuraciones de rutas y genera URL a partir de rutas con nombre.
Un framework web de Python para crear APIs con anotaciones de tipos estándar, validación automática, documentación OpenAPI y alto rendimiento.
Framework asíncrono de Kotlin para crear microservicios, aplicaciones web y API HTTP, desarrollado por JetBrains.