En el desarrollo web moderno, la comunicación segura entre el cliente y el servidor es crucial. Una forma común de garantizar esta seguridad es mediante el uso de un Token de Portador (Bearer Token) para la autenticación de la API. Este blog te guiará a través de qué es un Token de Portador, por qué es importante y cómo pasar un Token de Portador en las solicitudes Fetch.
¿Qué es un Token de Portador?
Un token de portador es un tipo de token de acceso que permite al portador, o titular, acceder a un recurso en particular. Se utiliza normalmente en la autenticación OAuth 2.0. El token es emitido por un servidor de autenticación y debe incluirse en los encabezados de la solicitud HTTP al realizar llamadas API a puntos finales protegidos.
¿Por qué usar Tokens de Portador?
- Seguridad: Los Tokens de Portador aseguran que solo los usuarios autorizados puedan acceder a recursos específicos.
- Simplicidad: Una vez emitidos, los tokens son fáciles de usar para solicitudes API posteriores.
- Flexibilidad: Los tokens pueden tener diferentes tiempos de vida y alcances, lo que permite un control de acceso detallado.
¿Qué son las Solicitudes Fetch?
Las solicitudes Fetch son una forma de realizar solicitudes de red en JavaScript, que se utiliza normalmente para obtener recursos de un servidor. La API Fetch proporciona una interfaz moderna y flexible para realizar solicitudes HTTP, ofreciendo un conjunto de características más potente y flexible en comparación con el antiguo XMLHttpRequest.
Las solicitudes Fetch se pueden utilizar para recuperar datos, enviar datos o realizar otras operaciones de red. La API admite promesas, lo que permite un manejo más fácil y limpio de las operaciones asíncronas.
Sintaxis Básica
La sintaxis básica para una solicitud fetch es la siguiente:
fetch(url, options)
.then(response => {
if (!response.ok) {
throw new Error('La respuesta de la red no fue correcta');
}
return response.json();
})
.then(data => console.log(data))
.catch(error => console.error('Ha habido un problema con tu operación fetch:', error));
url
: La URL del recurso que deseas obtener.options
: Un objeto opcional que contiene cualquier configuración personalizada para la solicitud (por ejemplo, método, encabezados, cuerpo).
Ejemplo
Aquí tienes un ejemplo sencillo de una solicitud GET utilizando la API Fetch:
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
Esta solicitud fetch recupera datos de la URL especificada y los registra en la consola.
Obtener un Token de Portador para Solicitudes Fetch
Antes de realizar solicitudes, necesitas obtener un Token de Portador. Esto generalmente implica la autenticación con un servidor OAuth 2.0. Aquí tienes un ejemplo simplificado de cómo obtener un token:
const tokenUrl = 'https://auth.server.com/token';
const clientId = 'your-client-id';
const clientSecret = 'your-client-secret';
async function getToken() {
const response = await fetch(tokenUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: `grant_type=client_credentials&client_id=${clientId}&client_secret=${clientSecret}`,
});
const data = await response.json();
return data.access_token;
}
Pasar un Token de Portador en Solicitudes Fetch
Una vez que tienes el Token de Portador, puedes usarlo para realizar solicitudes API autenticadas. El token debe incluirse en el encabezado Authorization
de tu solicitud Fetch.
async function fetchData() {
const token = await getToken();
const apiUrl = 'https://api.server.com/data';
const response = await fetch(apiUrl, {
method: 'GET',
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json',
},
});
if (!response.ok) {
throw new Error(`Error: ${response.statusText}`);
}
const data = await response.json();
console.log(data);
}
Ejemplo: Obtener Datos Protegidos
Vamos a repasar un ejemplo completo donde obtenemos datos protegidos de una API utilizando un Token de Portador.
- Obtener el Token: Primero, necesitamos obtener el token del servidor de autenticación.
- Realizar la Solicitud: A continuación, utilizamos el token para realizar una solicitud GET al punto final de la API protegida.
Aquí está el código completo:
async function getToken() {
const tokenUrl = 'https://auth.server.com/token';
const clientId = 'your-client-id';
const clientSecret = 'your-client-secret';
const response = await fetch(tokenUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: `grant_type=client_credentials&client_id=${clientId}&client_secret=${clientSecret}`,
});
if (!response.ok) {
throw new Error('Error al obtener el token');
}
const data = await response.json();
return data.access_token;
}
async function fetchData() {
try {
const token = await getToken();
const apiUrl = 'https://api.server.com/data';
const response = await fetch(apiUrl, {
method: 'GET',
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json',
},
});
if (!response.ok) {
throw new Error(`Error: ${response.statusText}`);
}
const data = await response.json();
console.log(data);
} catch (error) {
console.error('Error al obtener los datos:', error);
}
}
fetchData();
Cómo Pasar Tokens de Portador en Solicitudes Fetch Usando Apidog
Cuando se trabaja con APIs que requieren autenticación, pasar tokens de portador en las solicitudes fetch es una tarea común. Si bien esto se puede hacer manualmente agregando el token a los encabezados de la solicitud, Apidog proporciona una forma más conveniente de manejar los tokens de portador sin escribir código. En esta publicación de blog, exploraremos cómo Apidog simplifica el proceso de pasar tokens de portador en las solicitudes fetch.
¿Qué es Apidog?
Apidog es una poderosa herramienta de prueba, diseño y documentación de APIs que permite a los desarrolladores probar e interactuar fácilmente con las APIs. Proporciona una interfaz fácil de usar para enviar solicitudes HTTP, administrar la autenticación e inspeccionar las respuestas. Apidog admite varios métodos de autenticación, incluidos los tokens de portador.
Usar Apidog para Obtener un Token de Portador
Obtener un token de portador válido es el primer paso para enviar la solicitud fetch. Usar Apidog para obtener un token de portador para tus solicitudes API es fácil sin necesidad de codificación. Aquí te mostramos cómo:
Prerrequisitos:
Antes de comenzar, asegúrate de tener lo siguiente:
- Acceso a la documentación de la API o a los puntos finales de autenticación
- Credenciales requeridas (por ejemplo, nombre de usuario, contraseña, ID de cliente, secreto de cliente)
- Apidog instalado en tu máquina
Paso 1: Abre Apidog y Crea una Nueva Solicitud
Inicia la aplicación Apidog y crea una nueva solicitud haciendo clic en el botón "Nueva Solicitud".
Paso 2: Configura la Solicitud de Autenticación
En el panel de configuración de la solicitud, ingresa la URL del punto final de autenticación proporcionada por la documentación de la API o simplemente importa el cURL en Apidog. Este punto final es típicamente responsable de emitir tokens de portador tras una autenticación exitosa.
Establece el método HTTP en POST
(o el método apropiado especificado por la documentación de la API).

Paso 3: Establece los Encabezados de la Solicitud
Si la API requiere algún encabezado específico para la solicitud de autenticación, agrégalos en la pestaña "Encabezados" del panel de configuración de la solicitud. Los encabezados comunes incluyen Content-Type
y Accept
.
Paso 4: Configura el Cuerpo de la Solicitud
En la pestaña "Cuerpo" del panel de configuración de la solicitud, selecciona el tipo de cuerpo apropiado (por ejemplo, JSON, form-data) e ingresa los parámetros de autenticación requeridos. Estos parámetros típicamente incluyen:
- Nombre de usuario y contraseña
- ID de cliente y secreto de cliente
- Tipo de concesión (por ejemplo, "password", "client_credentials")
Consulta la documentación de la API para conocer los parámetros específicos y sus formatos.
Paso 5: Envía la Solicitud de Autenticación
Una vez que hayas configurado la solicitud de autenticación, haz clic en el botón "Enviar" para enviar la solicitud al servidor de la API.

Paso 6: Inspecciona la Respuesta
Después de enviar la solicitud, Apidog mostrará la respuesta de la API en el panel de respuesta. Busca el token de portador en el cuerpo de la respuesta. Por lo general, se devuelve como un objeto JSON con una clave llamada "access_token" o similar.

Paso 7: Copia el Token de Portador
Localiza el token de portador en el cuerpo de la respuesta y cópialo en tu portapapeles. Necesitarás este token para autenticar las solicitudes API posteriores.
Paso 8: Guarda el Token de Portador (Opcional)
Si deseas reutilizar el token de portador para futuras solicitudes, puedes guardarlo en las variables de entorno de Apidog. Esto te permite hacer referencia fácilmente al token en otras solicitudes sin tener que copiarlo y pegarlo manualmente cada vez.
Pasar el Token de Portador con Apidog
Apidog facilita el paso de tokens de portador en las solicitudes fetch. Aquí te mostramos cómo puedes hacerlo:
Paso 1. Abre Apidog: Inicia la aplicación Apidog y crea una nueva solicitud.
Paso 2. Configura la Autenticación: En el panel de configuración de la solicitud, localiza la pestaña "Auth". En el menú desplegable, selecciona "Token de Portador" como el tipo de autenticación.
Paso 3. Ingresa el Token de Portador: En el campo de entrada proporcionado, ingresa tu token de portador. Apidog almacena de forma segura el token y lo incluye automáticamente en los encabezados de la solicitud al enviar la solicitud.

Paso 4: Envía la Solicitud: Con el token de portador configurado, ahora puedes enviar la solicitud al punto final de la API. Apidog incluirá el token en el encabezado Authorization
de la solicitud automáticamente, en el formato Bearer tu-token-de-portador
.
Paso 5: Ve la Respuesta: Una vez que se envía la solicitud, Apidog mostrará la respuesta de la API. Puedes inspeccionar el cuerpo de la respuesta, los encabezados y el código de estado para verificar la autenticación exitosa y el acceso al recurso protegido.
Beneficios de Usar Apidog para Tokens de Portador:
1. Autenticación Simplificada:
Apidog elimina la necesidad de agregar manualmente el token de portador a los encabezados de la solicitud en tu código. Maneja la autenticación sin problemas, ahorrándote tiempo y esfuerzo.
2. Pruebas y Depuración Fáciles
Con Apidog, puedes probar y depurar rápidamente las APIs que requieren autenticación con token de portador. Puedes cambiar fácilmente entre diferentes tokens, inspeccionar las solicitudes y respuestas, y solucionar cualquier problema de autenticación.
3. Colaboración e Intercambio
Apidog te permite compartir tus solicitudes API y documentación con los miembros del equipo. Puedes colaborar en el desarrollo, las pruebas y la documentación de la API, asegurando que todos tengan acceso a los detalles de autenticación necesarios.
Conclusión
Pasar tokens de portador en las solicitudes fetch es un requisito común cuando se trabaja con APIs autenticadas. Si bien se puede hacer manualmente en el código, Apidog ofrece una solución sin complicaciones. Al aprovechar la función de autenticación con token de portador de Apidog, puedes incluir fácilmente tokens en tus solicitudes sin escribir ningún código. Esto simplifica el proceso de autenticación, mejora la seguridad y agiliza las pruebas y la depuración de la API. Prueba Apidog y experimenta la conveniencia de la autenticación con token de portador sin esfuerzo en tu flujo de trabajo de desarrollo de API.