Revisión de conceptos básicos
¿Qué es una API?
Una interfaz de programación de aplicaciones o API (Application Programming Interface) permite que dos sistemas o aplicaciones se comuniquen entre sí. Básicamente, una API proporciona el lenguaje y las reglas de cómo interactúan dos sistemas.
Cada API tiene documentación y especificaciones que determinan cómo se puede transferir la información. Al igual que se representa una página web, las API pueden utilizar solicitudes HTTP para obtener información de una aplicación web o un servidor web.
Cada vez que usas Facebook, cada que envías un mensaje por whatsapp, o cuando revisas el clima en tu celular, estás usando una API.
¿API SOAP o API REST?
Las API normalmente se clasifican como SOAP o REST y ambas se utilizan para acceder a los servicios web. SOAP se basa únicamente en XML para proporcionar servicios de mensajería, mientras que REST ofrece un método más ligero, utilizando URL en la mayoría de los casos para recibir o enviar información. REST utiliza cuatro verbos HTTP diferentes (GET, POST, PUT y DELETE) para realizar tareas.
A diferencia de SOAP, REST no tiene que utilizar XML para proporcionar la respuesta. Puede encontrar servicios web basados en REST que generan los datos en valores separados por comandos (CSV), notación de objetos JavaScript (JSON) y distribución realmente simple (RSS). El punto es que puede obtener el resultado que necesita en un formulario que sea fácil de analizar en el idioma que necesita para su aplicación.
¿Qué es FastAPI?
FastAPI es un framework para construir APIs con Python 3.6+. Es fácil de aprender y rápido de usar, es el framework ideal si quieres poner tus aplicaciones o modelos en producción en poco tiempo.
¿Por qué usar FastAPI?
Una herramienta ideal para desarrollar una API en python es FastAPI. Si quisieramos desarrollar nuestra API en JavaScript, que es lo más compún en desarrollo web podríamos usar NodeJS, pero en este caso nos quedaremos en python.
FastAPI es muy reconocido por tener un rendimiento comparable al de NodeJS. Existen otras alternativas a FastAPI, para desarrollar APIs en python, tales como Flask o Django, sin embargo, éstas no cuentan con las principales ventajas de FastAPI, que son concurrencia y el comportamiento asíncrono.
Last updated
Was this helpful?