Acerca de esta herramienta
La autenticación es lo primero que necesita un test de API y una fuente habitual de 401 desconcertantes: una contraseña con caracteres no ASCII codificada con btoa, un token pegado que ya incluye «Bearer» o una API key enviada en la query string que acaba en los logs. Esta herramienta construye la cabecera para autenticación Basic (RFC 7617, codificada en UTF-8 antes de Base64), Bearer tokens (RFC 6750) y API keys en una cabecera o en un parámetro de consulta, y muestra el comando curl correspondiente y una configuración de Playwright con extraHTTPHeaders que lee los secretos de variables de entorno. Para el flujo client credentials de OAuth 2.0 muestra la petición de token como curl y un pequeño helper de Playwright, porque ese flujo intercambia credenciales por un token en lugar de enviar una cabecera fija. Los datos introducidos nunca se guardan ni se envían.
Cómo usarla
- Elige el esquema: “Basic”, “Bearer token”, “API key” u “OAuth 2.0 client credentials”.
- Introduce las credenciales y la URL de la petición. Aparecen avisos ante errores comunes, como dos puntos en un usuario Basic o un http:// sin cifrar.
- Copia la línea de cabecera, el comando curl o el snippet de Playwright, y mueve el secreto a una variable de entorno antes de hacer commit.
Preguntas frecuentes: Generador de cabeceras de autenticación
¿El Base64 de la autenticación Basic es una forma de cifrado?
No. Base64 es una codificación que cualquiera puede revertir. La autenticación Basic solo es segura sobre HTTPS, y las credenciales se envían con cada petición.
¿Por qué btoa falla con mi contraseña?
btoa solo acepta caracteres Latin-1, así que caracteres como € o los emojis lanzan un error. RFC 7617 recomienda UTF-8, por lo que esta herramienta codifica primero el texto como bytes UTF-8, que es lo que decodificarán los servidores que esperan UTF-8.
¿Dónde deben guardarse las credenciales de prueba?
En variables de entorno o en el almacén de secretos de tu CI, nunca en el repositorio. Por eso los snippets de Playwright leen valores de process.env. Usa preferiblemente cuentas de prueba dedicadas con permisos mínimos y tokens de corta duración.