Principios de diseño de APIs REST
Principios de diseño de APIs REST
(desmitificando REST)
Sobre el 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.
Índice
- 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
Garantía de satisfacción 100% de Leanpub por 60 días
Durante los 60 días posteriores a la compra, puedes obtener un reembolso del 100% en cualquier compra de Leanpub, en dos clics.
Técnicamente, esto es arriesgado para nosotros, ya que tendrás los archivos del libro o curso de cualquier manera. Pero estamos tan seguros de nuestros productos y servicios, y de nuestros autores y lectores, que nos complace ofrecer una garantía de devolución total del dinero para todo lo que vendemos.
Solo puedes descubrir qué tan bueno es algo probándolo, y debido a nuestra garantía de devolución del 100% del dinero, ¡literalmente no hay riesgo al hacerlo!
Entonces, no hay razón para no hacer clic en el botón Agregar al carrito, ¿verdad?
Ver términos completos...
Gane $8 por una compra de $10, y $16 por una compra de $20
Pagamos regalías del 80% en compras de $7.99 o más, y regalías del 80% menos una tarifa fija de 50 centavos en compras entre $0.99 y $7.98. Usted gana $8 en una venta de $10, y $16 en una venta de $20. Así que, si vendemos 5000 copias no reembolsadas de su libro por $20, usted ganará $80,000.
(Sí, algunos autores ya han ganado mucho más que eso en Leanpub.)
De hecho, los autores han ganadomás de $14 millones escribiendo, publicando y vendiendo en Leanpub.
Aprenda más sobre escribir en Leanpub
Actualizaciones gratuitas. Sin DRM.
¡Si compras un libro de Leanpub, recibirás actualizaciones gratuitas mientras el autor actualice el libro! Muchos autores utilizan Leanpub para publicar sus libros mientras los escriben. Todos los lectores reciben actualizaciones gratuitas, sin importar cuándo compraron el libro o cuánto pagaron (incluso si fue gratis).
La mayoría de los libros de Leanpub están disponibles en PDF (para computadoras) y EPUB (para teléfonos, tabletas y Kindle). Los formatos incluidos en un libro se muestran en la esquina superior derecha de esta página.
Finalmente, los libros de Leanpub no tienen ninguna protección DRM sin sentido, por lo que puedes leerlos fácilmente en cualquier dispositivo compatible.
Aprende más sobre los formatos de ebook de Leanpub y dónde leerlos