Apidog

Plataforma de desarrollo de API colaborativa todo en uno

Diseño de API

Documentación de API

Depuración de API

Simulación de API

Prueba automatizada de API

Cómo usar Axios y Typescript para construir APIs

Aprende a usar Axios con Typescript para clientes API robustos y seguros. Descubre ventajas, retos y buenas prácticas para peticiones HTTP.

Daniel Costa

Daniel Costa

Updated on April 15, 2025

¡Hola, compañeros desarrolladores web! En esta entrada del blog, les mostraré cómo usar axios y typescript para construir APIs increíbles que sean rápidas, seguras y fáciles de mantener. Ya sea que seas un principiante o un profesional, encontrarás algo útil e interesante en esta publicación. ¡Así que toma una taza de café y empecemos!

¿Qué es Axios?

Axios es una popular biblioteca de JavaScript que te permite realizar solicitudes HTTP desde tu navegador o servidor Node.js. Tiene una sintaxis simple y elegante, admite promesas y async/await, y puede manejar varios escenarios como interceptores, tiempos de espera, cancelaciones y más. Axios también es compatible con la mayoría de los navegadores y plataformas, lo que lo convierte en una herramienta versátil y confiable para el desarrollo web.

Axios and Apidog

Definición de Typescript

Typescript es un superconjunto de JavaScript que agrega tipado estático y otras características al lenguaje. Te ayuda a detectar errores y bugs de forma temprana, mejorar la calidad y legibilidad del código y mejorar tu experiencia de desarrollo con herramientas como IntelliSense y la finalización de código. Typescript también se compila en JavaScript plano, por lo que puedes usarlo con cualquier framework o biblioteca que desees.

¿Qué es una API y por qué necesitas una?

Una API, o Interfaz de Programación de Aplicaciones, es un conjunto de reglas y protocolos que permite que diferentes aplicaciones se comuniquen e intercambien datos. Por ejemplo, cuando usas una aplicación del clima en tu teléfono, envía una solicitud a una API que proporciona la información meteorológica actual para tu ubicación. Luego, la API responde con los datos en un formato que la aplicación puede entender y mostrar.

Las APIs son esenciales para el desarrollo web moderno, ya que te permiten crear aplicaciones web dinámicas e interactivas que pueden acceder a datos de diversas fuentes y servicios. Por ejemplo, puedes usar APIs para integrar redes sociales, mapas, sistemas de pago, autenticación y más en tu aplicación web.

Cómo crear una API con Node.js y Express

Una de las formas más populares y poderosas de crear una API es usar Node.js y Express. Node.js es un entorno de tiempo de ejecución que te permite ejecutar código JavaScript en el lado del servidor, mientras que Express es un framework que simplifica el proceso de creación de servidores web y el manejo de solicitudes y respuestas HTTP.

Para crear una API con Node.js y Express, debes seguir estos pasos:

  1. Instala Node.js y Express en tu máquina. Puedes descargar Node.js desde aquí e instalar Express usando el comando npm install express.
  2. Crea una carpeta para tu proyecto e inicialízala con npm init. Esto creará un archivo package.json que contiene los metadatos y las dependencias de tu proyecto.
  3. Crea un archivo index.js que servirá como punto de entrada de tu aplicación. En este archivo, debes importar Express, crear una instancia de la aplicación y definir algunas rutas que manejarán las solicitudes a tu API. Por ejemplo, puedes crear una ruta que devuelva un mensaje simple cuando alguien visite la ruta raíz de tu aplicación:
// Import Express
const express = require('express');

// Create an app instance
const app = express();

// Define a route that returns a simple message
app.get('/', (req, res) => {
  res.send('Hello, world!');
});

// Listen on port 3000
app.listen(3000, () => {
  console.log('Server is running on port 3000');
});

4. Ejecuta tu aplicación con el comando node index.js y visita http://localhost:3000 en tu navegador. Deberías ver el mensaje "Hello, world!" mostrado en la pantalla.

¡Felicitaciones, acabas de crear tu primera API con Node.js y Express!

Cómo usar Axios para realizar solicitudes HTTP a tu API

Ahora que has probado tu API, necesitas usarla en tu aplicación web. Una de las formas más fáciles y elegantes de realizar solicitudes HTTP a tu API es usar axios, una biblioteca de JavaScript que simplifica el proceso de obtener datos de la web.

Para usar axios para realizar solicitudes HTTP a tu API, debes seguir estos pasos:

  1. Instala axios en tu proyecto usando el comando npm install axios.
  2. Importa axios en tu archivo JavaScript donde quieras usarlo. Por ejemplo, puedes importarlo en tu archivo index.js:
// Import axios
const axios = require('axios');

3. Usa los métodos axios para realizar solicitudes HTTP a los endpoints de tu API. Por ejemplo, puedes usar el método axios.get para obtener los datos de la ruta que devuelve un mensaje simple que creamos anteriormente:

// Make a GET request to the root path of the API
axios.get('http://localhost:3000')
  .then(response => {
    // Handle the success response
    console.log(response.data); // Prints "Hello, world!"
  })
  .catch(error => {
    // Handle the error response
    console.error(error);
  });

También puedes usar otros métodos de Axios para realizar diferentes tipos de solicitudes HTTP, como POST, PUT, PATCH, DELETE, etc. También puedes pasar encabezados, parámetros o datos del cuerpo a tus solicitudes, y manejar el estado de la respuesta, los datos, los encabezados, etc.

Cómo usar Typescript para agregar tipado estático a tu API

Una de las desventajas de JavaScript es que es un lenguaje de tipado dinámico, lo que significa que los tipos de variables y valores no se verifican hasta el tiempo de ejecución. Esto puede provocar errores y bugs que son difíciles de detectar y corregir, especialmente en proyectos grandes y complejos.

Typescript es una solución a este problema, ya que agrega tipado estático y otras características a JavaScript, haciéndolo más robusto y confiable. Typescript también se compila en JavaScript plano, por lo que puedes usarlo con cualquier framework o biblioteca que desees.

Para usar Typescript para agregar tipado estático a tu API, debes seguir estos pasos:

  1. Instala Typescript en tu proyecto usando el comando npm install typescript.
  2. Crea un archivo tsconfig.json que contenga las opciones de configuración para Typescript. Puedes usar el comando npx tsc --init para generar un archivo predeterminado, o personalizarlo según tus necesidades. Por ejemplo, puedes establecer las opciones target, module, strict y outDir:
{
  "compilerOptions": {
    "target": "es6", // Specify the target version of JavaScript
    "module": "commonjs", // Specify the module system
    "strict": true, // Enable strict mode
    "outDir": "./dist" // Specify the output directory
  }
}

3. Cambia el nombre de tu archivo index.js a index.ts, y agrega anotaciones de tipo a tus variables, parámetros y valores de retorno. Por ejemplo, puedes agregar tipos a la ruta que devuelve un mensaje simple que creamos anteriormente:

// Import Express
import express, { Request, Response } from 'express';

// Create an app instance
const app = express();

// Define a route that returns a simple message
app.get('/', (req: Request, res: Response) => {
  res.send('Hello, world!');
});

// Listen on port 3000
app.listen(3000, () => {
  console.log('Server is running on port 3000');
});

4. Compila tu código Typescript a JavaScript usando el comando npx tsc. Esto creará una carpeta dist que contiene los archivos JavaScript compilados.

5. Ejecuta tu aplicación con el comando node dist/index.js y visita http://localhost:3000 en tu navegador. Deberías ver el mismo mensaje "Hello, world!" mostrado en la pantalla.

Al usar Typescript, puedes beneficiarte de las ventajas del tipado estático, como detectar errores y bugs de forma temprana, mejorar la calidad y legibilidad del código y mejorar tu experiencia de desarrollo con herramientas como IntelliSense y la finalización de código. Typescript también admite características avanzadas como genéricos, interfaces, enumeraciones, decoradores y más, que pueden ayudarte a escribir código más expresivo y elegante.

Cómo usar Axios y Typescript juntos para realizar solicitudes HTTP con seguridad de tipos

Uno de los desafíos de usar axios y typescript juntos es que axios no proporciona definiciones de tipo para los datos de respuesta que devuelve.

Esto significa que tienes que definir manualmente los tipos de los datos que esperas de tu API y convertir los datos de respuesta a esos tipos. Esto puede ser tedioso y propenso a errores, especialmente si tu API tiene estructuras de datos complejas o dinámicas.

Afortunadamente, existe una solución para este problema, y es usar una biblioteca llamada axios-typescript. Axios-typescript es un envoltorio alrededor de axios que agrega definiciones de tipo y genéricos a los métodos axios, haciéndolos seguros para tipos y fáciles de usar con typescript.

Para usar axios-typescript para realizar solicitudes HTTP con seguridad de tipos a tu API, debes seguir estos pasos:

  1. Instala axios-typescript en tu proyecto usando el comando npm install axios-typescript.
  2. Importa axios-typescript en tu archivo typescript donde quieras usarlo. Por ejemplo, puedes importarlo en tu archivo index.ts:
// Import axios-typescript
import axios from 'axios-typescript';

3. Define los tipos de los datos que esperas de los endpoints de tu API. Por ejemplo, puedes definir un tipo para el objeto de usuario que creamos anteriormente:

// Define a type for the user object
type User = {
  name: string;
  email: string;
  password: string;
};

4. Usa los métodos axios-typescript para realizar solicitudes HTTP a los endpoints de tu API, y pasa el tipo de los datos como un parámetro genérico. Por ejemplo, puedes usar el método axios.post para crear un nuevo usuario en tu API, y pasar el tipo User como un parámetro genérico:

// Make a POST request to the /users path of the API, and pass the User type as a generic parameter
axios.post<User>('http://localhost:3000/users', {
  // Pass the user data as the request body
  name: 'John Doe',
  email: 'john.doe@example.com',
  password: '123456'
})
  .then(response => {
    // Handle the success response
    console.log(response.status); // Prints 201
    console.log(response.data); // Prints the created user object, with the User type
  })
  .catch(error => {
    // Handle the error response
    console.error(error);
  });

Al usar axios-typescript, puedes realizar solicitudes HTTP con seguridad de tipos a tu API, y beneficiarte de las características de verificación de tipos y autocompletado de typescript.

También puedes evitar la molestia de definir y convertir manualmente los tipos de los datos de respuesta, y confiar en la inferencia de tipos y los genéricos de typescript. Axios-typescript también admite todas las características y opciones de axios, como interceptores, cancelaciones, tiempos de espera, etc.

Cómo probar tu API con Apidog

Ahora que has creado tu API, necesitas probarla para asegurarte de que funciona como se espera y cumple con los requisitos de tus clientes o usuarios. Una de las mejores herramientas para probar APIs es Apidog, una plataforma basada en la web que te permite crear, ejecutar y compartir pruebas de API de una manera simple e intuitiva.

Para probar tu API con Apidog, debes seguir estos pasos:

Paso 1: Abre Apidog y crea una nueva solicitud.

Apidog

Paso 2: En el editor de pruebas, ingresa la URL de tu endpoint de API, selecciona el método HTTP y agrega cualquier encabezado, parámetro o dato del cuerpo que necesites. Por ejemplo, puedes probar la ruta que devuelve un mensaje simple que creamos anteriormente:

Apidog

Paso 3: Haz clic en el botón Enviar y mira el resultado de tu prueba. Deberías ver el código de estado, el tiempo de respuesta y el cuerpo de la respuesta de tu API. Por ejemplo, deberías ver algo como esto:

Apidog

Apidog es una gran herramienta para probar tus APIs, ya que te ayuda a garantizar la calidad, la confiabilidad y el rendimiento de tus servicios web. También te ahorra tiempo y esfuerzo, ya que no necesitas escribir ningún código ni instalar ningún software para probar tus APIs. Simplemente puedes usar tu navegador y disfrutar de la interfaz y las características fáciles de usar de Apidog.

Resumen

Acabas de aprender cómo usar axios y typescript para crear APIs increíbles que son rápidas, seguras y fáciles de mantener. En esta publicación, has descubierto:

  • Los beneficios de usar APIs para el desarrollo web
  • Los pasos para crear una API con Node.js y Express
  • Las herramientas para probar tu API con Apidog
  • Los métodos para usar axios para obtener datos de tu API
  • Las ventajas de usar typescript para agregar tipado estático a tu API
  • Las técnicas para usar axios-typescript para realizar solicitudes con seguridad de tipos

Esperamos que esta publicación te haya inspirado a usar axios y typescript para tu próximo proyecto web. Si tienes alguna pregunta, comentario o sugerencia, no dudes en compartirlos a continuación. Nos encantaría saber de ti y ayudarte en tu viaje de desarrollo web.

¡Gracias por leer y feliz codificación! 😊

Cómo usar Lovable AI (Alternativa a Cursor para desarrolladores web)Tutoriales

Cómo usar Lovable AI (Alternativa a Cursor para desarrolladores web)

Aprende a crear cualquier web con Lovable en esta guía completa. Descubre procesos paso a paso, funciones innovadoras e integra herramientas gratuitas como Apidog para gestión API.

Daniel Costa

April 15, 2025

Cómo usar n8n con servidores MCPTutoriales

Cómo usar n8n con servidores MCP

Automatiza flujos con n8n y servidores MCP para IA. Guía técnica: configuración, APIs, nodo "MCP Server Trigger" y Apidog para pruebas.

Daniel Costa

April 14, 2025

Cómo añadir claves API personalizadas a Cursor: Una guía completaTutoriales

Cómo añadir claves API personalizadas a Cursor: Una guía completa

Este tutorial te guiará para configurar y gestionar claves API personalizadas en Cursor (OpenAI, Anthropic, Google y Azure).

Daniel Costa

April 11, 2025