Las APIs son, como sus siglas en inglés lo dicen, una interfaz de programación de aplicaciones, que nos ofrece la manera de manipular información en el backend, permitiendo conectarlo con nuestro frontend en un desarrollo de software, ya sea implementación web o de escritorio. Considerando su forma de exposición, la API podrá seguir siendo la misma y reutilizada sea cual sea la parte frontend o interfaz gráfica de cara al usuario. Ahora que ya te di un poco de contexto sobre qué son las APIs, vamos a ver cómo implementar una del tipo REST (Representational State Transfer) que viene siendo simplemente una convención para desarrollar servicios web utilizando el protocolo HTTP. Ahora si, vamos a por ello!
Primero, crearemos un servidor con Express, uno de los frameworks más usados, junto con las herramientas de Node.js y typescript, utilizando NPM como gestor de paquetes.
En consola, vamos a ejecutar los siguientes comandos:
Luego de ejecutar estos comandos, en el archivo tsconfig.json vamos a verificar que tengamos lo siguiente:
Creamos la carpeta src en el origen del workspace.
Creamos el archivo index.ts dentro de la nueva carpeta, en el cual escribiremos las siguientes líneas para levantar un servidor con express.
import express, { Express, Request, Response } from "express";
const app: Express = express();
const port = 3000;
app.get("/", (req: Request, res: Response) => {
res.send("Express + TypeScript Server");
});
app.listen(port, () => {
console.log(`[server]: Server is running at http://localhost:${port}`);
});
Luego, debemos agregar estas líneas en la sección “scripts” en el archivo package.json
"scripts": {
"build": "tsc -p tsconfig.json",
"start": "npm run build && node dist/index.js"
}
Y finalmente ejecutaremos el siguiente comando en la consola:
npm run start
Veamos que los pasos con express son bastante sencillos y cortos, y en pocos pasos tenemos un servidor corriendo en el puerto indicado.
Ahora sobre este servidor, ya podemos implementar las distintas peticiones HTTP.