SSE Tester
SSE Tester
SSE Tester to narzędzie przeglądarkowe w postaci jednego pliku, znajdujące się w tools/test-sse. Pozwala zapisać się do dowolnej liczby kanałów PostgreSQL NOTIFY przez działające na żywo połączenie Server-Sent Events i obserwować przychodzące zdarzenia w czasie rzeczywistym.
Funkcje
- Subskrypcje wielu kanałów — dodawaj lub usuwaj kanały jako tagi (pill tags) przed połączeniem. Wszystkie kanały są przekazywane jako parametr zapytania
?channels=oddzielony przecinkami. - Wszystkie metody uwierzytelniania — zakładka Password używa HTTP Basic Auth (bezpośrednie dane logowania, bez potrzeby JWT); zakładka Bearer Token przyjmuje JWT lub token API.
- Strumień na żywo — wykorzystuje Fetch Streams API z
AbortControllerdla czystego rozłączenia. Linie SSE są parsowane ręcznie, dzięki czemu polaevent:,data:oraz heartbeat (:) są obsługiwane prawidłowo. - Podświetlanie składni JSON — payloady danych będące poprawnym JSON-em są formatowane z kolorowym podświetleniem.
- Trwałe ustawienia — URL API, prefiks, baza danych, dane logowania oraz lista kanałów są zapisywane w
localStorage.
Uwierzytelnianie
Narzędzie weryfikuje dane logowania przed odblokowaniem panelu subskrypcji. Kliknięcie Verify & Continue wywołuje capabilities z wybranym nagłówkiem — jeśli PgArachne zwróci poprawną odpowiedź, panel subskrypcji zostaje odblokowany.
- Zakładka Password — wysyła
Authorization: Basic <base64(user:pass)>. Użytkownik bazy danych musi miećGRANT EXECUTEna docelowych funkcjach oraz dostęp do endpointu SSE;GRANT <role> TO pgarachnenie jest wymagany. - Zakładka Bearer Token — wysyła
Authorization: Bearer <token>. Wklej JWT (uzyskany za pomocą JWT Getter) lub długotrwały token API.
Jak go włączyć: Ustaw
STATIC_FILES_PATH na tools/test-sse i odwiedź http://localhost:8080. Możesz też otworzyć index.html bezpośrednio w przeglądarce — cała funkcjonalność działa bez lokalnego serwera.