Sobre Nosotros

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Machine Learning Engineering (16 weeks)

Full-Stack Software Developer

Buscar en lecciones

Aprendizaje social y en vivo

La forma más eficiente de aprender: Únete a una cohorte con compañeros, transmisiones en vivo, sesiones improvisadas de codificación, tutorías en vivo con expertos reales y mantenga la motivación.

De cero a que te paguen como desarrollador, aprende las habilidades del presente y del futuro. Impulsa tu carrera profesional y sé contratado por una empresa tecnológica.

Empezar a programar

← Regresar a lecciones
Editar en Github

Entendiendo las Rest Apis

¿Qué es una API?

¿Qué es una API?

Una API es el intermediario de la mayoría de las aplicaciones modernas. API significa: Application Programming Interface (Interfaz de Programación de Aplicaciones). Vamos a desglosarla mirando cada una de sus partes:

AplicaciónProgramandoInterfaz
Si tienes un teléfono inteligente, estás familiarizado con las aplicaciones (herramientas, juegos, redes sociales y otro software que usamos todos los días).Programar es la forma en que los ingenieros crean todo el software que tanto facilitan nuestra vida.Una interfaz es un límite común compartido por dos aplicaciones o programas que permiten que ambos se comuniquen entre sí.

☝️ Esencialmente, una API es una forma para que los programadores se comuniquen con una aplicación en particular.

Esta es la API para usar un teléfono:

Cada API consta de 3 componentes principales: (1) Las funciones/métodos que tiene disponibles para usar, (2) El formato para la comunicación y (3) Los datos (y los tipos de datos) que manipulará. Por ejemplo, cualquier teléfono en el mundo tendrá la siguiente API:

Funciones/Métodos:Formato de Comunicación
Haz una llamada
Cuelga una llamada
Hablar con el operador
Marca algo en el teclado
Ruido (sonidos)! Hay un sonido para todo (incluso en los teléfonos modernos). Escucharás un tono cuando realices una llamada, cuando presionas una tecla, etc. El sistema del teléfono escucha los cambios de tono del sonido.

¿Qué pasa con una Aplicación Web?

Los métodos de la API de una aplicación web dependen completamente del propósito / negocio del sitio web:

  • Si estás creando la API para un producto como Uber, algunos de sus métodos serán: registrarse, solicitar un viaje, calificar un conductor, cancelar un viaje, etc.
  • Si estás creando una API para algo como AirBnB, algunos de sus métodos serán: listado de reservas, búsqueda de listado, cancelar viaje, etc.

El estándar REST

Hay docenas de formas de crear una API, pero el estándar REST ha llegado a dominarlas todas. Si realmente quieres ser un desarrollador web, tienes que sentirse muy cómodo con REST.

REST funciona a través de HTTP, lo que significa que todo está basado en texto. Utiliza los famosos comandos GET, POST, PUT y DELETE para clasificar los métodos API.

MétodoDescripción
GETSe utiliza para leer el estado del servidor. Al ser una operación segura, puede ejecutarse varias veces sin riesgo de modificación de datos o corrupción; llamarla una vez tiene el mismo efecto que llamarla diez veces.
POSTLos puristas de REST usan post solo para creación. Eso significa que cada vez que POSTEE algo en una API, estará creando un nuevo registro en la base de datos para eso. Algunas API utilizan POST para todas las operaciones de escritura (eliminar, actualizar y crear). Lo hacen porque PUT y DELETE no están disponibles en HTML / Formularios y eso hace que esos métodos sean más difíciles de usar.
PUTEs más usado para actualizar el estado en el servidor; Aunque también se puede utilizar para crear estado.
DELETESe utiliza para eliminar datos en el servidor

Códigos de Status para la Respuesta

Los códigos de estado HTTP entregan metadatos en la respuesta al estado de los recursos solicitados. Son parte de lo que hace de la Web una plataforma para construir sistemas distribuidos. Se dividen en las siguientes categorías:

  • 1xx – Metadata
  • 2xx – Todo está bien
  • 3xx – Redirección
  • 4xx – Cliente hizo algo mal
  • 5xx – Servidor hizo algo mal

URIs (Identificadores de Recursos Uniformes)

Los URI diferencian un recurso de otro. Para acceder y manipular un recurso, debes tener al menos una dirección.

Ellos están compuestos por un protocolo + host + path. Ejemplo: https://api.uber.com/v1.2/products

Los clientes no deben estar acoplados a una URI de recursos particulares, ya que pueden cambiarse a discreción del servidor. Aquí es donde la hipermedia tiene las mayores ventajas, porque ofrece una forma de desacoplar a los clientes de URIs específicas y agregar semántica al protocolo de la aplicación.

Aquí hay algunas URI de la API de Twitter:

Recursos

Un recurso es una representación abstracta de un objeto que puede llamarse usando Create, Read, Update o Delete con tu API, por ejemplo:

  • Si estás construyendo el API para un aprendizaje electrónico, los recursos podrían ser: un estudiante, un curso, una clase, un tema, un profesor.
  • Si estás creando una API de comercio electrónico, los recursos podrian ser: Producto, Categoría, Pedido, Cliente, Compra, etc.

Los recursos representan los documentos que se transfieren a través de la red para realizar el trabajo. Los recursos deben nombrarse como sustantivos, ya que representan conceptos en el dominio de un sistema en particular y se identifican usando URIs.

Otras lecturas:

Lista de API's públicas

Lista de API públicas que no requieren autenticación: https://github.com/public-apis/public-apis