WebSocket testni klijent

Povežite se na WebSocket, šaljite poruke i pregledajte poslane i primljene poruke, status veze, šifru za zatvaranje WebSocket-a i razlog zatvaranja koji daje server.

Unesite potpunu adresu ws:// ili wss://. Veza počinje samo kada odaberete Poveži.
Unesite WebSocket adresu za povezivanje.Zatvori kod
Šalje jednu tekstualnu poruku. Pritisnite Ctrl+Enter ili Command+Enter za slanje.
Dnevnik poruka
Poslano 0Primljeno 0

Povežite se i pošaljite poruku da započnete evidenciju.

Ova stranica ništa se ne prenosi na BroBroGo niti sprema. Vaša adresa i poruke idu direktno iz vašeg pretraživača na WebSocket server koji odaberete.

Česta pitanja

Koje podatke WebSocket mogu provjeriti ovdje?

Možete vidjeti svaku tekstualnu ili binarnu poruku koju prikazuje vaš pretraživač, njen smjer, vrijeme i veličinu, plus konačni kod zatvaranja, razlog i status čistog zatvaranja. Stranice pretraživača ne mogu izložiti fragmente na nivou mreže ili kontrolne okvire Ping i Pong.

Zašto veza ne uspijeva čak i kada adresa radi na drugom mjestu?

Na bezbednoj stranici, pretraživač može zahtevati wss://. Server također mora prihvatiti veze pretraživača i porijeklo stranice. Ovaj klijent ne može dodati prilagođena zaglavlja rukovanja, zaobići greške certifikata ili nadjačati pravila pristupa servera.

Mogu li testirati s proizvodnim ili osjetljivim podacima?

Koristite sintetičke podatke kad god je to moguće. Uklonite imena, detalje računa, pravne podatke, finansijske informacije i zdravstvene podatke prije slanja. Poruke idu na server koji odaberete, čija su pravila evidentiranja i zadržavanja izvan kontrole ove stranice.

Rad sa WebSocket protokolom i mrežna komunikacija

WebSocket protokol omogućava dvosmjernu, trajnu komunikaciju između klijenta i servera preko jedne TCP veze. Za razliku od tradicionalnog HTTP modela koji se oslanja na stalne zahtjeve i odgovore, WebSocket održava aktivnu vezu koja omogućava slanje podataka u realnom vremenu. Ova tehnologija je ključna za rad integracijskih inženjera, programera koji razvijaju API-je u realnom vremenu, QA osoblja i sistemskih administratora koji moraju ručno testirati javno dostupne WebSocket krajnje tačke.

Prilikom uspostavljanja veze, klijent šalje početni HTTP zahtjev za nadogradnju protokola. Ako server prihvati zahtjev, veza se prebacuje na WebSocket protokol. Tokom ovog procesa, klijent i server mogu razmjenjivati tekstualne i binarne poruke bez dodatnog režijskog opterećenja koje sa sobom nosi HTTP zaglavlje.

Protokoli ws:// i wss:// i njihova sigurnost

WebSocket komunikacija se odvija preko dvije sheme protokola:

  • ws:// (WebSocket): Koristi se za nešifrovanu komunikaciju. Podaci se šalju u čistom tekstualnom obliku, što ovaj protokol čini pogodnim isključivo za lokalni razvoj i testiranje gdje ne postoji rizik od presretanja podataka.
  • wss:// (WebSocket Secure): Koristi Transport Layer Security (TLS) za šifrovanje cjelokupnog saobraćaja. Ovaj protokol sprječava posrednike da čitaju ili mijenjaju prenesene poruke i obavezan je za sve produkcijske sisteme i javne mreže.

Alat podržava isključivo ove dvije sheme. Ako unesete adresu sa drugačijim protokolom, sistem će prikazati poruku: "Koristite adresu ws:// ili wss://".

Pravila povezivanja i ograničenja pretraživača

Uspostavljanje veze sa WebSocket serverom započinje isključivo kada korisnik aktivira opciju "Povežite se". Tokom ovog procesa, klijent prolazi kroz nekoliko faza i primjenjuje stroga pravila validacije:

  1. Validacija adrese: Adresa mora biti potpuna i ispravno formatirana. Ako uneseni unos ne predstavlja potpunu adresu, prikazuje se poruka: "Unesite potpunu WebSocket adresu kao što je wss://example.com/socket". Maksimalna dozvoljena dužina adrese je 2.048 znakova. Ako adresa prekorači ovaj limit, sistem ispisuje: "Ta adresa je neobično duga. Držite ga ispod 2,048 znakova".
  2. Uspostavljanje veze: Tokom pokušaja povezivanja, klijent prikazuje status "Povezivanje na ‹address›…". Ako server ne odgovori i ne otvori vezu u roku od 10 sekundi, proces se prekida uz poruku: "Server nije otvorio vezu unutar 10 sekundi".
  3. Neuspjela veza: U slučaju neuspjeha, klijent ispisuje: "Veza nije uspjela. Provjerite adresu, certifikat, dostupnost servera i pravila pristupa pretraživaču".

Važno je razumjeti da ovaj klijent radi unutar okruženja web pretraživača. Zbog sigurnosnih ograničenja samog pretraživača, alat ne može dodati prilagođena zaglavlja rukovanja (custom handshake headers), zaobići greške sa SSL/TLS certifikatima niti zaobići sigurnosna pravila pristupa koja nameće server (kao što su CORS ili restrikcije porijekla zahtjeva). Također, pretraživački API ne dozvoljava pristup mrežnim fragmentima niti prikazuje kontrolne okvire kao što su Ping i Pong.

Slanje poruka i upravljanje dnevnikom

Nakon što se veza uspješno uspostavi, klijent prikazuje status "Povezano na ‹address›." i omogućava dvosmjernu razmjenu podataka.

Slanje podataka

Korisnik može slati pojedinačne tekstualne poruke. Slanje se vrši odabirom opcije "Pošalji poruku" ili prečicom Ctrl+Enter odnosno Command+Enter. Ako pokušate poslati poruku prije nego što je veza aktivna, sistem će prikazati upozorenje: "Povežite se prije slanja poruke". Maksimalna veličina pojedinačne poruke iznosi 100.000 znakova. Prekoračenje ovog limita rezultira porukom: "Ta poruka je neobično velika. Držite ga ispod 100,000 znakova".

Dnevnik poruka i ograničenja prikaza

Sve aktivnosti se hronološki bilježe u dnevnik poruka koji razlikuje sljedeće stavke:

  • Događaj: Označava sistemske promjene veze.
  • Poslano: Prikazuje tekstualne poruke koje je klijent poslao serveru.
  • Primljeno: Prikazuje poruke koje je server poslao klijentu.
  • Tekst: Označava tekstualni sadržaj poruke.
  • Binarna poruka: Označava binarne podatke, pri čemu se prikazuje oznaka "Binarna poruka" uz tačnu veličinu u bajtovima (npr. "bajtova").

Dnevnik ima ugrađene mehanizme za očuvanje performansi pretraživača:

  • Maksimalni kapacitet dnevnika je 500 unosa. Kada se ovaj broj prekorači, stariji unosi se brišu, a klijent ispisuje: "‹count› stariji unosi dnevnika su uklonjeni kako bi ova stranica reagovala.".
  • Pojedinačni unosi u dnevniku mogu prikazati najviše 20.000 znakova. Duži unosi se skraćuju uz napomenu: "‹count› više znakova je skriveno u ovom pregledu.".

Opcija "Clear log" služi isključivo za čišćenje trenutno prikazanih zapisa na ekranu. Korištenje ove opcije ne prekida aktivnu WebSocket vezu niti resetuje brojače poslanih i primljenih poruka.

Zatvaranje veze i interpretacija kodova

Kada se WebSocket veza zatvori, klijent prikazuje informaciju o zatvaranju u formatu: "Zatvoreno kodom ‹code› (‹clean›). Razlog: ‹reason›".

Status zatvaranja može biti označen kao "cisto" (ako je veza zatvorena uredno kroz definisani protokolarni protokol) ili "nije čisto" (u slučaju iznenadnog prekida mreže ili pada servera). Ako server prilikom zatvaranja ne pošalje tekstualno obrazloženje, klijent ispisuje: "Nije naveden razlog".

Uobičajeni numerički kodovi za zatvaranje (Close Codes) definisani RFC 6455 standardom uključuju:

Kod Značenje Opis
1000 Normal Closure Veza je uspješno zatvorena nakon što je svrha ostvarena.
1001 Going Away Server se gasi ili je klijent napustio stranicu.
1002 Protocol Error Veza se prekida zbog greške u protokolu.
1003 Unsupported Data Primljen je tip podataka koji klijent ili server ne mogu obraditi.
1006 Abnormal Closure Veza je prekinuta neočekivano bez slanja kontrolnog okvira za zatvaranje.
1011 Internal Error Server je naišao na neočekivanu grešku koja ga je spriječila da ispuni zahtjev.

Privatnost i obrada podataka

Obrada svih podataka unutar ovog alata odvija se lokalno. Ova stranica ništa se ne prenosi na BroBroGo niti sprema. Unesena WebSocket adresa i sve poslane ili primljene poruke prenose se direktno iz vašeg web pretraživača na WebSocket server koji sami odaberete. Alat ne koristi posredničke servere za prosljeđivanje saobraćaja niti skladišti historiju komunikacije izvan lokalne sesije vašeg pretraživača.

Često postavljana pitanja (FAQ)

Koje podatke WebSocket mogu provjeriti ovdje?

Možete vidjeti svaku tekstualnu ili binarnu poruku koju prikazuje vaš pretraživač, njen smjer, vrijeme i veličinu, plus konačni kod zatvaranja, razlog i status čistog zatvaranja. Stranice pretraživača ne mogu izložiti fragmente na nivou mreže ili kontrolne okvire Ping i Pong.

Zašto veza ne uspijeva čak i kada adresa radi na drugom mjestu?

Na bezbednoj stranici, pretraživač može zahtevati wss://. Server također mora prihvatiti veze pretraživača i porijeklo stranice. Ovaj klijent ne može dodati prilagođena zaglavlja rukovanja, zaobići greške certifikata ili nadjačati pravila pristupa servera.

Mogu li testirati s proizvodnim ili osjetljivim podacima?

Koristite sintetičke podatke kad god je to moguće. Uklonite imena, detalje računa, pravne podatke, finansijske informacije i zdravstvene podatke prije slanja. Poruke idu na server koji odaberete, čija su pravila evidentiranja i zadržavanja izvan kontrole ove stranice.