Principios de diseño de APIs REST
Principios de diseño de APIs REST
(desmitificando REST)
Sobre este libro
¿Has oido hablar de REST pero no terminas de averiguar exactamente lo qué es? ¿Piensas que REST es simplemente usar HTTP y XML o JSON? ¿Terminos como HATEOAS o Hypermedia APIs te parecen confusos? ¿Te sientes frustrado a la hora de diseñar web services con SOAP y WSDL y buscas una alternativa? ¿Necesitas diseñar una API web para tu nueva startup? Entonces es probable que este libro te ayude.
Este libro es una introducción concisa y clara al mundo de las APIs web diseñadas siguiendo el estilo REST. Empezaremos averiguando qué es exactamente REST y por qué HTTP es un protocolo ideal para implementar REST. Continuaremos con cómo diseñar APIs orientadas a datos (CRUD) mediante REST. Finalmente iremos más allá del enfoque CRUD, y veremos como mediante el uso de Hypermedia podemos definir una API REST autodescubrible y que permita a los consumidores de tu sistema realizar operaciones de negocio de forma sencilla.
Este no es un libro de programación, no encontrareis en él recetas de código ni cómo usar un determinado framework o librería, eso lo dejo para otro libro. Este libro está escrito para aclarar todas las confusiones y malentendidos en torno a REST. Está orientado a cualquier profesional del software (arquitecto, programador, etc) que quiera tener una visión clara del tema, y necesite tomar decisiones informadas sobre el diseño de la API web de su sistema.
Recordad, si comprais este libro en formato electrónico, recibireis gratuitamente cualquier actualización de éste.
Este es un libro en progreso, ¡ cualquier sugerencia de mejora será recibida de buen grado !
Espero que os guste.
Tabla de contenidos
- Sobre la cubierta
- Novedades en esta versión
- Agradecimientos
- Érase una vez…
- 1 La web programable: APIs y más APIs
- 2 ¿Qué es REST?
- 2.1 Definición
- 2.2 ¿Por qué usar REST?
- 3 REST en la práctica: HTTP
- 3.1 Introducción
- 3.2 URIs
- 3.3 Los verbos HTTP
- 3.4 Los tipos MIME
- 3.5 Códigos de estado
- 3.6 QoS en HTTP
- 3.7 HTTP y REST
- 4 APIs orientadas a datos: CRUD
- 4.1 Introducción
- 4.2 Leyendo
- 4.3 Actualizando
- 4.4 Borrando
- 4.5 Creando
- 4.6 Seguramente CRUD no sea lo mejor para tu API…
- 5 Buenas prácticas y patrones de diseño básicos
- 5.1 Respeta la semántica de HTTP
- 5.2 Servicios multimedia
- 5.3 Concurrencia optimista
- 5.4 Cache
- 5.5 Multiidioma
- 5.6 Prácticas básicas de seguridad en REST
- 5.7 Actualizaciones parciales
- 5.8 Versionado de API
- 5.9 ¿Necesito una sesión HTTP?
- 5.10 Peticiones asíncronas o de larga duración
- 5.11 URIs desechables y recursos “virtuales”
- 5.12 Procesos de negocio
- 5.13 Procesos VS. Peticiones asíncronas
- 6 Hypermedia APIs
- 6.1 Introducción
- 6.2 El concepto de hypermedia
- 6.3 Consultas autodescubribles y URI Templates
- 6.4 Controles hypermedia
- 6.5 Web Linking
- 6.6 Patrón Envelope
- 6.7 Servicios web autodescriptivos
- 6.8 ¿Qué modela nuestra API? ¿Aplicaciones o procesos?
- 6.9 ¿Un tipo mime por API?
- 7 Hypertext Application Language (HAL)
- 7.1 Introducción
- 7.2 Links
- 7.3 Recursos incrustados
- 7.4 Curie
- 7.5 Un ejemplo
- 7.6 HAL y XML
- 7.7 Conclusión
- 8 SIREN
- 8.1 Introducción
- 8.2 Datos
- 8.3 Tipos de datos
- 8.4 Links
- 8.5 Recursos incrustados
- 8.6 Formularios
- 8.7 SIREN y XML
- 8.8 SIREN vs. HAL
- 9 Collection+JSON
- 9.1 Introducción
- 9.2 Datos
- 9.3 Links
- 9.4 Consultas
- 9.5 Formularios
- 9.6 Conclusiones
- 10 (X)HTML
- 10.1 Introducción
- 10.2 HTML como formato de datos
- 10.3 Enlaces y formularios
- 10.4 Conclusiones
- 11 Atom y AtomPub
- 11.1 Introducción
- 11.2 Servicios y autodescubrimiento
- 11.3 Feeds y entries
- 11.4 Media Resources VS. Media Entries
- 11.5 Manipulando elementos de una colección
- 11.6 Conclusiones
- 12 Referencias y bibliografía
Leanpub incondicional, sin riesgo, 100% de felicidad garantizada
Durante los primeros 60 días de compra, puedes obtener un reembolso del 100% de cualquier compra Leanpub, en dos clics. Procesamos las restituciones manualmente, así que puede tomarse unos días en aparecer. Véase términos completos.
Gana $8 en una compra de $10 y $16 en una compra de $20
Pagamos 80% de regalías en compras de $7.99 o más y 80% de regalías menos una tarifa fija de 50 centavos en compras entre $0.99 y $7.98. Ganas $8 en una venta de $10 y $16 en una venta de $20. Entonces, si vendemos 5000 copias no reembolsadas de tu libro por $20, ganarás $80,000.
(Sí, algunos autores ya han ganado mucho más que eso en Leanpub.)
De hecho, los autores han ganadomás de 13 millones de dólares escribiendo, publicando y vendiendo en Leanpub.
Obtén más información sobre escribir en Leanpub
Actualizaciones gratis. Libre de DRM.
¡Si compras un libro Leanpub obtienes actualizaciones gratis siempre y cuando el autor actualice el libro! Varios autores usan Leanpub para publicar sus libros en progreso mientras los escriben. Todos los lectores obtienen actualizaciones gratis, independientemente de cuándo compraron el libro o cuánto pagaron (incluyendo si fue gratis).
La mayoría de los libros Leanpub se encuentran disponibles en PDF (para computadores) y EPUB (para teléfonos, tabletas, y Kindle). Los formatos que un libro incluye se muestran en la esquina superior derecha de esta página.
Finalmente, los libros Leanpub no tienen ninguna de las cosas sin sentido sobre protección de copia DRM, así que puedes leerlos fácilmente en cualquier dispositivo que se soporta.
Aprende más sobre los formatos de Leanpub y dónde puedes leerlos