SSE Tester

2 min de lectura

SSE Tester

El SSE Tester es una herramienta de un único archivo para el navegador, ubicada en tools/test-sse. Permite suscribirse a cualquier número de canales PostgreSQL NOTIFY a través de una conexión Server-Sent Events en vivo y observar los eventos en tiempo real.

Funciones

  • Múltiples canales — añada o elimine canales como etiquetas antes de conectar. Todos los canales se pasan como un parámetro ?channels= separado por comas.
  • Todos los métodos de autenticación — la pestaña Password usa HTTP Basic Auth (credenciales directas, sin JWT necesario); la pestaña Bearer Token acepta un JWT o token de API.
  • Stream en vivo — utiliza la Fetch Streams API con un AbortController para una desconexión limpia. Las líneas SSE se parsean manualmente, de modo que los campos event:, data: y heartbeat (:) se gestionan correctamente.
  • Resaltado de sintaxis JSON — los payloads JSON se muestran con colores.
  • Configuración persistente — URL, prefijo, base de datos, nombre de usuario y lista de canales se guardan en localStorage.

Autenticación

La herramienta verifica las credenciales antes de mostrar el panel de suscripción. Al hacer clic en Verify & Continue se llama a capabilities con el encabezado elegido — si PgArachne devuelve una respuesta correcta, el panel de suscripción se desbloquea.

  • Pestaña Password — envía Authorization: Basic <base64(usuario:contraseña)>. El usuario de base de datos debe tener GRANT EXECUTE sobre las funciones objetivo y acceso al endpoint SSE; no requiere GRANT <rol> TO pgarachne.
  • Pestaña Bearer Token — envía Authorization: Bearer <token>. Pegue un JWT (obtenido con el JWT Getter) o un token de API duradero.
Cómo habilitarlo: Establezca STATIC_FILES_PATH en tools/test-sse y visite http://localhost:8080. También puede abrir index.html directamente en el navegador.